anchor.diff:  %% unless_opt(Option, Options, Fun) -> ok.
   %%  Call Fun when Option is/is not a member of Options.
   
  -when_opt(Opt, Opts, Fun) ->
  -    case member(Opt, Opts) of
  -        true -> Fun();
  -        false -> ok
  -    end.
  -
  -%% unless_opt(Opt, Opts, Fun) ->
  -%%     case member(Opt, Opts) of
  -%%         true -> ok;
  -%%         false ->  Fun()
  -%%     end.
  +when_opt(Opt, Opts, Fun) -> ?IF(member(Opt, Opts), Fun(), ok).
  +
  +%% unless_opt(Opt, Opts, Fun) -> ?IF(member(Opt, Opts), ok, Fun()).
  
positive.code:     {ok,Mod,add_docs_chunk(Beam, St1),Warns}.
  
  beam_write(St0) ->
      Res = lists:map(fun (M) -> beam_write_module(M, St0) end, St0#comp.code),
      St1 = St0#comp{code=Res},
      %% Check return status.
      case all_ok(Res) of
          true -> {ok,St1};
          false -> {error,St1}
      end.
  
  beam_write_module({ok,M,Beam,_}=Mod, St) ->
      Name = filename:join(St#comp.odir, lists:concat([M,".beam"])),
  
negative.code:     %% Compile all the modules, then if all are ok.
      Ms1 = lists:map(fun (M) -> do_erl_comp_mod(M, ErlOpts) end, Ms0),
      St1 = St0#comp{code=Ms1},
      ?IF(all_ok(Ms1), {ok,St1}, {error,St1}).
  
  do_erl_comp_mod({ok,Name,Core,Ws,Docs}, ErlOpts) ->
      %% lfe_io:format("~p\n", [Core]),
  