anchor.diff:  file(File, Opt) ->
       file(File, [Opt|?DEFAULT_OPTIONS]).
   
  -forms(File) -> forms(File, ?DEFAULT_OPTIONS).
  +-spec forms(abstract_code()) -> comp_ret().
  +
  +forms(Forms) -> forms(Forms, ?DEFAULT_OPTIONS).
  +
  +-spec forms(abstract_code(), [option()] | option()) -> comp_ret().
   
   forms(Forms, Opts) when is_list(Opts) ->
       do_compile({forms,Forms}, [binary|Opts++env_default_opts()]);
  
positive.code:     do_compile({file,File}, Opts);
  noenv_file(File, Opt) ->
      noenv_file(File, [Opt|?DEFAULT_OPTIONS]).
  
  noenv_forms(Forms, Opts) when is_list(Opts) ->
      do_compile({forms,Forms}, [binary|Opts]);
  
negative.code: -type warnings() :: [{file:filename(), [err_info()]}].
  -type mod_ret()  :: {'ok', module()}
                    | {'ok', module(), cerl:c_module()} %% with option 'to_core'
                    | {'ok',                            %% with option 'to_pp'
                       module() | [],                   %% module() if 'to_exp'
                       abstract_code()}
                    | {'ok', module(), warnings()}.
  -type bin_ret()  :: {'ok', module(), binary()}
                    | {'ok', module(), binary(), warnings()}.
  