anchor.diff:  -export([io_server_proxy/1,start_io_server_proxy/0, proxy_getall/1, 
   	 proxy_setnext/2, proxy_quit/1]).
   %% For spawn
  --export([toerl_server/3,answering_machine1/3,
  -	 answering_machine2/3]).
  +-export([toerl_server/4,answering_machine1/3,answering_machine2/3]).
   
   -export([uprompt/1]).
   
  -%%-define(without_test_server, true).
  -
  --ifdef(without_test_server).
  --define(line, put(line, ?LINE), ).
  --define(config(X,Y), foo).
  --define(t, test_server).
  --define(privdir(_), "./io_SUITE_priv").
  --else.
   -include_lib("common_test/include/ct.hrl").
   -define(privdir(Conf), proplists:get_value(priv_dir, Conf)).
  --endif.
   
   %%-define(debug, true).
   
  
positive.code: 	    ok;
  	new ->
  	    %% OK, time for the group_leaders...
  	    rtnode([{putline,""},
  		    {putline, "2."},
  		    {getline, "2"},
  		    {putline, "lists:keyfind(encoding,1,io:getopts())."},
  		    {getline, "{encoding,latin1}"},
  		    {putline, "io:format(\"~ts~n\",[[1024]])."},
  		    {getline, "\\x{400}"},
  		    {putline, "io:setopts([unicode])."},
  		    {getline, "ok"},
  		    {putline, "io:format(\"~ts~n\",[[1024]])."},
  		    {getline,
  		     binary_to_list(unicode:characters_to_binary(
  				      [1024],unicode,utf8))}
  		   ],[],"LC_CTYPE=\""++get_lc_ctype()++"\"; "
  		   "export LC_CTYPE; ")
      end,
      rtnode([{putline,""},
  	    {putline, "2."},
  	    {getline_re, ".*2$"},
  	    {putline, "lists:keyfind(encoding,1,io:getopts())."},
  	    {getline_re, ".*{encoding,latin1}"},
  	    {putline, "io:format(\"~ts~n\",[[1024]])."},
  	    {getline_re, ".*\\\\x{400\\}"},
  	    {putline, "io:setopts([{encoding,unicode}])."},
  	    {getline_re, ".*ok"},
  	    {putline, "io:format(\"~ts~n\",[[1024]])."},
  	    {getline_re,
  	     ".*"++binary_to_list(unicode:characters_to_binary(
  				    [1024],unicode,utf8))}
  	   ],[],"LC_CTYPE=\""++get_lc_ctype()++"\"; export LC_CTYPE; ",
  	   " -oldshell "),
  
      ok.
  
  %% Tests various unicode options on random generated files.
  
negative.code: 	old ->
  	    ok;
  	new ->
  	    rtnode(
                [{putline, "2."},
                 {expect, "[\n ]2[^.]"},
                 {putline, "lists:keyfind(binary,1,io:getopts())."},
                 {expect, "[\n ]{binary,false}"},
                 {putline, "io:get_line('')."},
                 {putline, "hej"},
                 {expect, "\\Q\"hej\\n\"\\E"},
                 {putline, "io:setopts([{binary,true},unicode])."},
                 {expect, "[\n ]ok"},
                 {putline, "io:get_line('')."},
                 {putline, "hej"},
                 {expect, "\\Q<<\"hej\\n\">>\\E"},
                 {putline, "io:get_line('')."},
                 {putline, binary_to_list(<<"\345\344\366"/utf8>>)},
                 {expect, latin1, "[\n ]\\Q<<\""++binary_to_list(<<"\345\344\366"/utf8>>)++"\\n\"/utf8>>\\E"}
                ],[]);
          _ ->
              ok
      end,
      %% And one with oldshell
      rtnode(
        [{putline, "2."},
         {expect, "[\n ]2[^.]"},
         {putline, "lists:keyfind(binary,1,io:getopts())."},
         {expect, "[\n ]{binary,false}"},
         {putline, "io:get_line('')."},
         {putline, "hej"},
         {expect, "[\n ]\\Q\"hej\\n\"\\E"},
         {putline, "io:setopts([{binary,true},unicode])."},
         {expect, "[\n ]ok"},
         {putline, "io:get_line('')."},
         {putline, "hej"},
         {expect, "\\Q<<\"hej\\n\">>\\E"},
         {putline, "io:get_line('')."},
         {putline, binary_to_list(<<"\345\344\366"/utf8>>)},
         {expect, latin1, "[\n ]\\Q<<\""++binary_to_list(<<"\345\344\366"/utf8>>)++"\\n\"/utf8>>\\E"}
        ],[],"",["-oldshell"]),
      ok.
  
  
  