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: %%       several include directories.</dd>
  %%   <dt>`-o Dir'</dt>
  %%   <dd>Specify output directory for where to generate
  %%       the <i>Protofile</i>.erl and <i>Protofile</i>.hrl</dd>
  %%   <dt>`-v optionally | always | never'</dt>
  %%   <dd>Specify how the generated encoder should
  %%       verify the message to be encoded.</dd>
  
negative.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 `{o_erl,directory()}', `{o_hrl,directory()}', `{o_nif_cc,directory()}',
  %% options specify output directory for where to generate the `.erl'
  %% and `.hrl' files respectively, and for the NIF C++ file,
  %% if the `nif' option is specified. The `{o_erl,directory()}' option
  %% overrides any `{o,directory()}' option, and similarly for the
  %% other file-type specific output options.
  %%
  %% The `nif' option will cause the compiler to generate nif C++ code
  %% for that can be linked with the Google protobuf C++ library. The
  