anchor.diff:  %%  none has been given then use 'undefined'.
   
   normalise_fields(Fs) ->
  -    map(fun ({record_field,Lf,Field}) ->
  -                {record_field,Lf,Field,{atom,Lf,undefined}};
  -	    ({typed_record_field,{record_field,Lf,Field},_Type}) ->
  -		{record_field,Lf,Field,{atom,Lf,undefined}};
  +    map(fun ({record_field,Anno,Field}) ->
  +                {record_field,Anno,Field,{atom,Anno,undefined}};
  +	    ({typed_record_field,{record_field,Anno,Field},_Type}) ->
  +		{record_field,Anno,Field,{atom,Anno,undefined}};
   	    ({typed_record_field,Field,_Type}) ->
   		Field;
               (F) -> F
   	end, Fs).
   
  -%% record_fields(RecordName, Line, State)
  +%% record_fields(RecordName, Anno, State)
   %% find_field(FieldName, Fields)
   
  -record_fields(R, Line, St) ->
  +record_fields(R, Anno, St) ->
       Fields = maps:get(R, St#exprec.records),
       case St#exprec.dialyzer of
           true ->
  -            [{record_field,Line,{atom,Line,F},copy_expr(Di, Line)} ||    
  -                {record_field,_Lf,{atom,_La,F},Di} <- Fields];
  +            [{record_field,Anno,{atom,Anno,F},copy_expr(Di, Anno)} ||
  +                {record_field,_Anno,{atom,_AnnoA,F},Di} <- Fields];
           false ->
               Fields
       end.
  
positive.code: 	_ ->
  	    {Var,Rs0}
      end;
  opt_pattern({cons,Line,H0,T0}, Rs0) ->
      {H,Rs1} = opt_pattern(H0, Rs0),
      {T,Rs} = opt_pattern(T0, Rs1),
      {{cons,Line,H,T},Rs};
  opt_pattern({tuple,Line,Es0}, Rs0) ->
      {Es,Rs} = opt_pattern_list(Es0, Rs0),
      {{tuple,Line,Es},Rs};
  opt_pattern({match,Line,Pa0,Pb0}, Rs0) ->
      {Pa,Rs1} = opt_pattern(Pa0, Rs0),
      {Pb,Rs} = opt_pattern(Pb0, Rs1),
      {{match,Line,Pa,Pb},Rs};
  opt_pattern(P, Rs) -> {P,Rs}.
  
  opt_var({var,Line,_}=Var, Tag, Sz) ->
      Rp = record_pattern(2, -1, ignore, Sz, Line, [{atom,Line,Tag}]),
      {match,Line,{tuple,Line,Rp},Var}.
  
  opt_remove(Gs, Rs) ->
      [opt_remove_1(G, Rs) || G <- Gs].
  
negative.code: %%
  %% %CopyrightBegin%
  %%
  %% Copyright Ericsson AB 2005-2020. All Rights Reserved.
  %%
  %% Licensed under the Apache License, Version 2.0 (the "License");
  %% you may not use this file except in compliance with the License.
  