anchor.diff:  %% Static compilation hook, used in protocol consolidation
   
   consolidate(Map, TypeSpecs, Chunks) ->
  -  {Prefix, Forms, _Def, _Defmacro, _Macros} = dynamic_form(Map),
  +  {Prefix, Forms, _Def, _Defmacro, _Macros, _NoWarnUndefined} = dynamic_form(Map),
     load_form(Map, Prefix, Forms, TypeSpecs, Chunks).
   
   %% Dynamic compilation hook, used in regular compiler
  
positive.code:   {Def, Defmacro, Macros, Exports, Functions} =
      split_definition(Definitions, Unreachable, [], [], [], [], {[], []}),
  
    Location = {elixir_utils:characters_to_list(RelativeFile), Line},
    Prefix = [{attribute, Line, file, Location},
              {attribute, Line, module, Module},
              {attribute, Line, compile, [no_auto_import | Opts]}],
  
    Forms0 = functions_form(Line, Module, Def, Defmacro, Exports, Functions, Deprecated),
    Forms1 = attributes_form(Line, Attributes, Forms0),
    {Prefix, Forms1, Def, Defmacro, Macros}.
  
  % Definitions
  
  
negative.code: signature_to_binary(_, Name, Signature) ->
    'Elixir.Macro':to_string({Name, [], Signature}).
  
  checker_chunk(#{definitions := Definitions, deprecated := Deprecated}, NoWarnUndefined) ->
    DeprecatedMap = maps:from_list(Deprecated),
  
    Exports =
  