anchor.diff:  
     assert_no_aliases_name(Line, Name, Args, E),
     store_definition(Line, Kind, DoCheckClauses, Name,
  -                   LinifyArgs, LinifyGuards, LinifyBody, File, E).
  -
  -store_definition(Line, Kind, CheckClauses, Name, Args, Guards, Body, MetaFile, #{module := Module} = ER) ->
  +                   LinifyArgs, LinifyGuards, LinifyBody, Location, E).
  +
  +store_definition(Line, Kind, CheckClauses, Name, Args, Guards, Body, KeepLocation, #{module := Module} = ER) ->
     Arity = length(Args),
     Tuple = {Name, Arity},
     E = ER#{function := Tuple},
     elixir_locals:record_definition(Tuple, Kind, Module),
   
  -  Location = retrieve_location(Line, MetaFile, Module),
  +  Location = retrieve_location(KeepLocation, Module),
     {Function, Defaults, Super} = translate_definition(Kind, Line, Module, Name, Args, Guards, Body, E),
   
     DefaultsLength = length(Defaults),
  
positive.code:     false -> 'Elixir.Module':get_attribute(Module, file)
    end.
  
  normalize_location(X) ->
    elixir_utils:characters_to_list(elixir_utils:relative_to_cwd(X)).
  
  %% Compile super
  
  
negative.code:   DoCheckClauses = (not lists:keymember(context, 1, Meta)) andalso (CheckClauses),
  
    %% Check if there is a file information in the definition.
    %% If so, we assume this come from another source and
    %% we need to linify taking into account keep line numbers.
    {Location, Key} = case lists:keyfind(file, 1, Meta) of
      {file, KeepFile} when is_binary(KeepFile) ->
        case lists:keyfind(keep, 1, Meta) of
          {keep, KeepLine} when is_integer(KeepLine) -> KeepLine;
          _ -> KeepLine = 0
        end,
        {{KeepFile, KeepLine}, keep};
      _ ->
        {nil, line}
    end,
  
    LinifyArgs   = elixir_quote:linify(Line, Key, Args),
  