anchor.diff:  fread(Format, Line) ->
       fread(Format, Line, 0, []).
   
  -fread([$~|Format0], Line, N, Results) ->
  +fread([$~|Format0]=AllFormat, Line, N, Results) ->
       {Format,F,Sup,Unicode} = fread_field(Format0),
  -    fread1(Format, F, Sup, Unicode, Line, N, Results, Format0);
  -fread([$\s|Format], Line, N, Results) ->
  -    fread_skip_white(Format, Line, N, Results);
  -fread([$\t|Format], Line, N, Results) ->
  -    fread_skip_white(Format, Line, N, Results);
  -fread([$\r|Format], Line, N, Results) ->
  -    fread_skip_white(Format, Line, N, Results);
  -fread([$\n|Format], Line, N, Results) ->
  +    fread1(Format, F, Sup, Unicode, Line, N, Results, AllFormat);
  +fread([C|Format], Line, N, Results) when ?is_whitespace(C) ->
       fread_skip_white(Format, Line, N, Results);
   fread([C|Format], [C|Line], N, Results) ->
       fread(Format, Line, N+1, Results);
  
positive.code: -export([fread/2,fread/3]).
  
  -import(lists, [reverse/1,reverse/2]).
  
  %%-----------------------------------------------------------------------
  
  
negative.code:     fread_skip_latin1_nonwhite(Line, N+1, [C|Cs]);
  fread_skip_latin1_nonwhite([], N, Cs) -> {[],N,Cs}.
  
  fread_skip_nonwhite([C|Line], N, Cs) when ?is_whitespace(C) ->
      {[C|Line],N,Cs};
  fread_skip_nonwhite([C|Line], N, Cs) ->
      fread_skip_nonwhite(Line, N+1, [C|Cs]);
  fread_skip_nonwhite([], N, Cs) -> {[],N,Cs}.
  