anchor.diff:  
   file_write_file(FileName, Bin, Opts) ->
       file_op(write_file, [FileName, Bin], Opts).
  +
  +possibly_write_file(FileName, Bin, Opts) when is_binary(Bin) ->
  +    file_op(write_file, [FileName, Bin], Opts);
  +possibly_write_file(_FileName, '$not_generated', _Opts) ->
  +    ok.
   
   file_op(Fn, Args, Opts) ->
       FileOp = proplists:get_value(file_op, Opts, fun use_the_file_module/2),
  
positive.code: 
  %% -- nif c++ code -----------------------------------------------------
  
  format_nif_cc(Mod, Defs, Opts, AnRes) ->
      [format_nif_cc_includes(Mod, Defs, Opts),
       format_nif_cc_local_function_decls(Mod, Defs, Opts),
       format_nif_cc_mk_atoms(Mod, Defs, AnRes, Opts),
  
negative.code:        f("-export([get_package_name/0]).~n"),
         f("-export([gpb_version_as_string/0, gpb_version_as_list/0]).~n"),
         "\n",
         [["-on_load(load_nif/0).\n",
           "-export([load_nif/0]). %% for debugging of nif loading\n",
           "\n"]
          || DoNif],
         f("-include(\"~s.hrl\").~n", [Mod]),
         f("-include(\"gpb.hrl\").~n"),
         "\n",
         [[f("~s~n", [format_load_nif(Mod, Opts)]),
           "\n"]
          || DoNif],
         %% Enabling inlining seems to cause performance to drop drastically
         %% I've seen decoding performance go down from 76000 msgs/s
         %% to about 10000 msgs/s for a set of mixed message samples.
  