anchor.diff:  	  lists:usort([Name || {{_, Name}, _Def} <- MDefs ++ MUses]);
         _ -> {error, "The current file does not compile!"}
       end.
  -	    
   need_bracket(Toks, Exprs) ->
  -    case Exprs of 
  -	[E] ->
  -	    {Start, End} = refac_util:get_range(E),
  -	    Toks1 = lists:reverse(lists:takewhile(
  -				    fun (B) -> 
  -					    element(2, B) =/= Start
  -				    end, Toks)),
  -	    Toks2 = lists:dropwhile(fun (B) -> 
  -					    case B of
  -						{whitespace, _, _} -> true;
  -						_ -> false
  -					    end
  -				    end, Toks1),
  -	    Toks3 = lists:dropwhile(fun(B) ->
  -					    element(2, B) =< End orelse 
  -						element(1,B)==whitespace
  -				    end, Toks),
  -	    case Toks2 of
  -		[{'(',_}| _] -> 
  -		    case Toks3 of
  -			[{')',_}| _] ->
  -			    true;
  -			_ -> false
  -		    end;
  -		_ ->false
  -	    end;
  -	_ ->false
  +    case Exprs of
  +      [E] ->
  +	  {Start, End} = refac_misc:get_start_end_loc(E),
  +	  Toks1 = lists:reverse(lists:takewhile(
  +				  fun (B) ->
  +					  element(2, B) =/= Start
  +				  end, Toks)),
  +	  Toks2 = lists:dropwhile(fun (B) ->
  +					  case B of
  +					    {whitespace, _, _} -> true;
  +					    _ -> false
  +					  end
  +				  end, Toks1),
  +	  Toks3 = lists:dropwhile(fun (B) ->
  +					  element(2, B) =< End orelse
  +					    element(1, B) == whitespace
  +				  end, Toks),
  +	  case Toks2 of
  +	    [{'(', _}| _] ->
  +		case Toks3 of
  +		  [{')', _}| _] ->
  +		      true;
  +		  _ -> false
  +		end;
  +	    _ -> false
  +	  end;
  +      _ -> false
       end.
   
   collect_names_to_avoid(AnnAST) ->
  
positive.code: 			[] -> {error, "You have not selected a sequence of expressions/patterns!"};
  			_ ->
  			    ExprList = [hd(Sel)],
  			    NeedBracket = need_bracket(refac_util:get_toks(FunDef), ExprList),
  			    {ok, AnnAST, [hd(Sel)], NeedBracket}
  		      end;
  		  _ -> {error, "You have not selected a sequence of expressions/patterns!"}
  
negative.code: 
  -spec(replace_expr_with_macro/3::(syntaxTree(), {[syntaxTree()], pos(), pos()}, syntaxTree()) ->
  				       syntaxTree()).
  replace_expr_with_macro(Form, {ExpList, SLoc, ELoc}, MApp) ->
      case length(ExpList) == 1 of
        true ->
  	  element(1, ast_traverse_api:stop_tdTP(fun replace_single_expr_with_macro_app/2, Form, {MApp, SLoc, ELoc}));
        _ ->
  	  element(1, ast_traverse_api:stop_tdTP(fun replace_expr_list_with_macro_app/2, Form, {MApp, SLoc, ELoc}))
      end.
  
  replace_single_expr_with_macro_app(Tree, {MApp, SLoc, ELoc}) ->
      case refac_misc:get_start_end_loc(Tree) of
        {SLoc, ELoc} ->
  	  {MApp, true};
        _ -> {Tree, false}
  