anchor.diff:  
   pattern_map_pairs(Ces0, Isub, Osub0, St0) ->
       %% pattern the pair keys and values as normal
  -    {Kes,{Osub1,St1}} = lists:mapfoldl(fun
  +    {Kes,{Osub1,St1}} = mapfoldl(fun
   	    (#c_map_pair{anno=A,key=Ck,val=Cv},{Osubi0,Sti0}) ->
   		{Kk,[],Sti1} = expr(Ck, Isub, Sti0),
   		{Kv,Osubi2,Sti2} = pattern(Cv, Isub, Osubi0, Sti1),
  
positive.code: format_error({nomatch_shadow,Line}) ->
      M = io_lib:format("this clause cannot match because a previous clause at line ~p "
  		      "always matches", [Line]),
      lists:flatten(M);
  format_error(nomatch_shadow) ->
      "this clause cannot match because a previous clause always matches";
  format_error(bad_call) ->
  
negative.code:     Fvs = make_vars(Free),
      Arity = length(Vs) + length(Free),
      {Fname,St} =
          case keyfind(id, 1, A) of 
  	    {id,{_,_,Fname0}} ->
  		{Fname0,St1};
  	    false ->
  