anchor.diff:  		 P = refac_syntax:match_expr_pattern(Node),
   		 B = refac_syntax:match_expr_body(Node),
   		 P1 = add_category(P, pattern),
  -		 B1 = add_category(B, expression),
  +		 B1 = add_category(B, C),
   		 Node1 = refac_syntax:copy_attrs(Node, refac_syntax:match_expr(P1, B1)),
   		 {refac_syntax:add_ann({category, C}, Node1), true};
   	     operator -> {refac_syntax:add_ann({category, operator}, Node), true}; %% added to fix bug 13/09/2008.
  
positive.code: 			 end,
  		 Node1 = refac_syntax:copy_attrs(Node, refac_syntax:macro(Name1, Args1)),
  		 {refac_syntax:add_ann({category, macro}, Node1), true};
  	     attribute ->
  		 case refac_syntax:atom_value(refac_syntax:attribute_name(Node)) of
  		   define ->
  
negative.code: 		   Op = refac_syntax:application_operator(Node),
  		   Args = refac_syntax:application_arguments(Node),
  		   Op1 = add_category(Op, application_op),
  		   Args1 = add_category(Args, C),
  		   Node1 = refac_syntax:copy_attrs(Node, refac_syntax:application(Op1, Args1)),
  		   {refac_syntax:add_ann({category, C}, Node1), true};						   
  	     arity_qualifier ->
  