anchor.diff:      pattern_alias_map_pair_patterns([pat_alias(Cv1,Cv2)|Cvs]).
   
   pattern_map_pair({map_field_exact,L,K,V}, St) ->
  -    case expr(K,St) of
  -	{#c_literal{}=Key,_,_} ->
  -	    #c_map_pair{anno=lineno_anno(L, St),
  -			op=#c_literal{val=exact},
  -			key=Key,
  -			val=pattern(V, St)};
  -	_ ->
  -	    %% this will throw a cryptic error message
  -	    %% but it is better than nothing
  -	    throw(nomatch)
  -    end.
  +    {Ck,[],_} = expr(K,St),
  +    #c_map_pair{anno=lineno_anno(L,St),
  +		op=#c_literal{val=exact},
  +		key=Ck,
  +		val=pattern(V,St)}.
   
   %% pat_bin([BinElement], State) -> [BinSeg].
   
  
positive.code: -import(ordsets, [add_element/2,del_element/2,is_element/2,
  		  union/1,union/2,intersection/2,subtract/2]).
  -import(cerl, [ann_c_cons/3,ann_c_cons_skel/3,ann_c_tuple/2,c_tuple/1,
  	       ann_c_map/2, ann_c_map/3]).
  
  -include("core_parse.hrl").
  
  
negative.code:     A = record_anno(L, St1),
      {annotate_tuple(A, Es1, St1),Eps,St1};
  expr({map,L,Es0}, St0) ->
      map_build_pair_chain(#c_literal{val=#{}},Es0,lineno_anno(L,St0),St0);
  expr({map,L,M0,Es0}, St0) ->
      try expr_map(M0,Es0,lineno_anno(L, St0),St0) of
  	{_,_,_}=Res -> Res
  