anchor.diff:  		       Else, Env),
       typetest_clause(T, V, Body, Env).
   
  -match_congroup({?binary_id, Segs}, Vs, Cs, _Else, Env) -> 
  -    Ref = get_unique(),
  -    Guard = cerl:c_primop(cerl:c_atom(set_label), [cerl:c_int(Ref)]),
  -    NewElse = cerl:c_primop(cerl:c_atom(goto_label), [cerl:c_int(Ref)]),
  -    Body = match(Vs, Cs, NewElse, Env),
  -    cerl:c_clause([make_pat(?binary_id, Segs)], Guard, Body);
  +match_congroup({?binary_id, Segs}, Vs, Cs, Else, Env) ->
  +    Body = match(Vs, Cs, Else, Env),
  +    cerl:c_clause([make_pat(?binary_id, Segs)], Body);
   
   match_congroup({D, A}, Vs, Cs, Else, Env) ->
       Vs1 = new_vars(A, Env),
  
positive.code: 
  expr(E, Env) ->
      case cerl:type(E) of
   	literal ->
  	    E;
  	var ->
  
negative.code:     end.
  
  
  %% ---------------------------------------------------------------------
  %% Abstract datatype: environment()
  
  