anchor.diff:                  {_, _, {error, R}} -> {error, {write_failed, NifCc,  R}}
               end
       end.
  -
  -verify_opts(_Opts) ->
  -    %% placeholder for verifications
  -    ok.
   
   return_or_report_warnings_or_errors(Res, ExtraWarns, Opts, OutFormat) ->
       Res2 = merge_warns(Res, ExtraWarns, OutFormat),
  
positive.code:     {Warns, Opts1} = possibly_adjust_typespec_opt(IsAcyclic, Opts0),
      Opts2 = normalize_return_report_opts(Opts1),
      AnRes = analyze_defs(Defs, Opts2),
      case verify_opts(Opts2) of
          ok ->
              Res1 = do_proto_defs(Defs, clean_module_name(Mod), AnRes, Opts2),
              return_or_report_warnings_or_errors(Res1, Warns, Opts2,
                                                  get_output_format(Opts2));
          {error, OptError} ->
              return_or_report_warnings_or_errors({error, OptError}, [], Opts2,
                                                  get_output_format(Opts2))
      end.
  
  
  %% @spec msg_defs(Mod, Defs) -> CompRet
  
negative.code:     erl_syntax:tuple(
        [erl_syntax:tuple([erl_syntax:atom(service),
                           erl_syntax:atom(ServiceName)]),
         rpcs_def_tree(Rpcs, Opts)]).
  
  get_rpc_format_by_opts(Opts) ->
      case proplists:get_bool(defs_as_proplists, proplists:unfold(Opts)) of
  