anchor.diff:      lists:any(fun(I) -> TargetLastMod < filelib:last_modified(I) end,
                 [Source] ++ Hrls).
   
  --spec internal_erl_compile(Source::string(), Config::#config{}, Outdir::string()) -> 'ok' | 'skipped'.
  -internal_erl_compile(Source, Config, Outdir) ->
  +-spec internal_erl_compile(Source::string(), Config::#config{},
  +                           Outdir::string(), ErlOpts::list()) -> 'ok' | 'skipped'.
  +internal_erl_compile(Source, Config, Outdir, ErlOpts) ->
       %% Determine the target name and includes list by inspecting the source file
       {Module, Hrls} = inspect(Source, include_path(Source, Config)),
   
  
positive.code: %% ===================================================================
  %% Public API
  %% ===================================================================
  
  -spec compile(Config::#config{}, AppFile::string()) -> 'ok'.
  compile(Config, _AppFile) ->
  
negative.code:     CurrPath = code:get_path(),
      code:add_path("ebin"),
      rebar_base_compiler:run(Config, FirstErls, SortedRestErls,
                              fun(S, C) -> internal_erl_compile(S, C, OutDir,
                                                                ErlOpts)
                              end),
      code:set_path(CurrPath),
      ok.
  
  