anchor.diff:  parse_opt({"I", [Dir]})          -> {true, {i,Dir}};
   parse_opt({"I"++Dir, []})        -> {true, {i,Dir}};
   parse_opt({"o", [Dir]})          -> {true, {o,Dir}};
  +parse_opt({"o-erl", [Dir]})      -> {true, {o_erl,Dir}};
  +parse_opt({"o-hrl", [Dir]})      -> {true, {o_hrl,Dir}};
  +parse_opt({"o-nif-cc", [Dir]})   -> {true, {o_nif_cc,Dir}};
   parse_opt({"nif",[]})            -> {true, nif};
   parse_opt({"load_nif",[S]})      -> {true, {load_nif,S}};
   parse_opt({"v", ["optionally"]}) -> {true, {verify,optionally}};
  
positive.code: %% The `{o,directory()}' option specifies directory to use for storing
  %% the generated `.erl' and `.hrl' files. Default is the same
  %% directory as for the proto `File'.
  %%
  %% The `nif' option will cause the compiler to generate nif C++ code
  %% for that can be linked with the Google protobuf C++ library. The
  
negative.code: %%                   {load_nif, LoadNif} |
  %%                   {i, directory()} |
  %%                   {o, directory()} |
  %%                   {o_erl, directory()} | {o_hrl, directory()} |
  %%                   {o_nif_cc, directory()} |
  %%                   binary | to_msg_defs |
  %%                   return | return_warnings | return_errors |
  %%                   report | report_warnings | report_errors
  