anchor.diff:  %%  N.B. Field names are full expressions here but only atoms are allowed
   %%  by the *linter*!.
   
  -pattern_fields([{record_field,Lf,{atom,La,F},P0}|Pfs]) ->
  +pattern_fields([{record_field,Af,{atom,Aa,F},P0}|Pfs]) ->
       P1 = pattern(P0),
  -    [{record_field,Lf,{atom,La,F},P1}|pattern_fields(Pfs)];
  -pattern_fields([{record_field,Lf,{var,La,'_'},P0}|Pfs]) ->
  +    [{record_field,Af,{atom,Aa,F},P1}|pattern_fields(Pfs)];
  +pattern_fields([{record_field,Af,{var,Aa,'_'},P0}|Pfs]) ->
       P1 = pattern(P0),
  -    [{record_field,Lf,{var,La,'_'},P1}|pattern_fields(Pfs)];
  +    [{record_field,Af,{var,Aa,'_'},P1}|pattern_fields(Pfs)];
   pattern_fields([]) -> [].
   
   %% -type guard([GuardTest]) -> [GuardTest].
  
positive.code: 	     _ ->
  		 bit_types(T1)
  	 end,
      [{bin_element,L1,expr(E1),S2,T2} | pattern_grp(Fs)];
  pattern_grp([]) ->
      [].
  
  
negative.code:     [E1|gexpr_list(Es)];
  gexpr_list([]) -> [].
  
  grecord_inits([{record_field,Af,{atom,Aa,F},Val0}|Is]) ->
      Val1 = gexpr(Val0),
      [{record_field,Af,{atom,Aa,F},Val1}|grecord_inits(Is)];
  grecord_inits([{record_field,Af,{var,Aa,'_'},Val0}|Is]) ->
      Val1 = gexpr(Val0),
      [{record_field,Af,{var,Aa,'_'},Val1}|grecord_inits(Is)];
  grecord_inits([]) -> [].
  
  %% -type exprs([Expression]) -> [Expression].
  