anchor.diff:      lists:foldl(fun collect_ewc_macro/2, Mst, Fs);
   collect_macro({['extend-module',_|Mdef],_}, Mst) ->
       collect_mdef(Mdef, Mst);
  -collect_macro(_, Mst) -> Mst.                   %Ignore functions here.
  +collect_macro({['define-function',Name,_,Def],_}, Mst) ->
  +    %% Check for LFE-EXPAND-EXPORTED-MACRO and $handle_undefined_function.
  +    case {Name,function_arity(Def)} of
  +        {'LFE-EXPAND-EXPORTED-MACRO',3} ->
  +            Mst#umac{leem=true};
  +        {'$handle_undefined_function',2} ->
  +            Mst#umac{huf=true};
  +        _ -> Mst                                %Ignore other functions
  +    end;
  +collect_macro(_, Mst) -> Mst.                   %Ignore everything else
   
   collect_ewc_macro([set,Name,Val], #umac{env=Env0}=Mst) ->
       Env1 = lfe_env:add_vbinding(Name, Val, Env0),
  
positive.code:     Exp = [export,['LFE-EXPAND-EXPORTED-MACRO',3],
             ['$handle_undefined_function',2]],
      Md1 = {['define-module',Name,Doc,Exp|Mdef],L},
      {[Md1|Fs1 ++ [{Umac,L}]],Cst}.
  
  collect_macros(Fs, Mst) ->
      lists:foldl(fun collect_macro/2, Mst, Fs).
  
negative.code: 
  add_huf(L, [{['define-function','$handle_undefined_function',Doc,Def],Lf}=F|Fs]) ->
      case function_arity(Def) of
          2 -> [{make_huf(Doc, Def),Lf}|Fs];      %Found the right $huf
          _ -> [F|add_huf(L, Fs)]
      end;
  add_huf(L, [F|Fs]) ->
  