anchor.diff:  %%@doc Returns the syntax category of `Node'.
   %%@spec syntax_category(syntaxTree()) -> pattern|expression|guard_expression|unknown
   -spec(syntax_category(Node::syntaxTree()) -> 
  -             pattern|expression|guard_expression|unknown).
  +             pattern|expression|guard_expression|operator|
  +             generator|record_type|record_field|macro_name|
  +             unknown).
   syntax_category(Node) ->
       As = refac_syntax:get_ann(Node),
       case lists:keyfind(category, 1, As) of 
  
positive.code:                 true ->
                      case lists:keysearch(AtomValue, 1, Subst) of
                          {value, {AtomValue, Expr}} ->
                              {refac_misc:reset_pos(Expr), true};
                          false ->
                              {Node, false} %% TODO: SHOULD ISSUE AN ERROR MSG HERE!!!
                      end;
                  _ ->
                      {Node, false}
              end;
  	_ -> {Node, false}
      end.
                                     
  is_meta_list_variable(VarName) ->
      lists:prefix("@@", lists:reverse(atom_to_list(VarName))).
    
  
  
  %%=================================================================
  %%-spec(reverse_function_clause(Tree::syntaxTree()) -> syntaxTree()).   
  
negative.code:                                 [] -> {refac_syntax:list(Expr), true};
                                  [E] ->
                                      %% No longer can guarantee the correctness of annotations.
                                      {reset_pos_and_range(E), true};
                                  _ ->
                                      E1=refac_syntax:add_ann(
                                           {fake_block_expr, true},
                                           %%refac_syntax:block_expr(Expr)),
                                           reset_pos_and_range(
                                             refac_syntax:block_expr(Expr))),
                                      {E1, true}
                              end;
                          false ->
                              E1=reset_pos_and_range(Expr),
                              {E1,  true}
                      end;
                  _ -> {Node, false}
  