anchor.diff:      Pos = get_pos(Node),
       Name = implicit_fun_name(Node),
       case type(Name) of
  -      arity_qualifier ->
  -	  F = arity_qualifier_body(Name),
  -	  A = arity_qualifier_argument(Name),
  -	  case {type(F), type(A)} of
  -	    {atom, integer} ->
  -		{'fun', Pos, {function, concrete(F), concrete(A)}};
  -	    _ -> Node
  -	  end;
  -      _ -> Node
  -    end.
  +	arity_qualifier ->
  +	    F = arity_qualifier_body(Name),
  +	    A = arity_qualifier_argument(Name),
  +	    case {type(F), type(A)} of
  +		{atom, integer} ->
  +		    {'fun', Pos,
  +		     {function, concrete(F), concrete(A)}};
  +		_ ->
  +		    Node
  +	    end;
  +	module_qualifier ->
  +	    M = module_qualifier_argument(Name),
  +	    Name1 = module_qualifier_body(Name),
  +	    F = arity_qualifier_body(Name1),
  +	    A = arity_qualifier_argument(Name1),
  +	    case {type(M), type(F), type(A)} of
  +		{atom, atom, integer} ->
  +		    {'fun', Pos,
  +		     {function, concrete(M), concrete(F), concrete(A)}};
  +		_ ->
  +		    Node
  +	    end;
  +	_ ->
  +	    Node
  +    end.
  +
   
   %% =====================================================================
   %% @spec implicit_fun_name(Node::syntaxTree()) -> syntaxTree()
  
positive.code: %% @see parentheses/1
  
  parentheses_body(Node) -> data(Node).
  
  %% =====================================================================
  %% @spec macro(Name) -> syntaxTree()
  
negative.code:                       _ -> 
                            Ms = qualified_name([set_pos(atom(A), Pos1) 
                                                 || {_, Pos1,A} <- Data]),
                            [set_pos(Ms, get_pos(hd(Data)))]
                    end;
                file ->
                    {{string, Pos1, File}, {integer, Pos2, Line}}=Data,
  