anchor.diff:  build_plt(State, Plt, Output, Files) ->
       ?INFO("Building with ~b files in ~ts...", [length(Files), rebar_dir:format_source_file_name(Plt)]),
       GetWarnings = get_config(State, get_warnings, false),
  +    OutputFormat = get_config(State, output_format, formatted),
       Opts = [{analysis_type, plt_build},
               {get_warnings, GetWarnings},
  +            {output_format, OutputFormat},
               {output_plt, Plt},
               {files, Files}],
       run_dialyzer(State, Opts, Output).
  
positive.code:                      {timing, Timing} |
                       Opts],
              ?DEBUG("Running dialyzer with options: ~p~n", [Opts2]),
              Warnings = format_warnings(rebar_state:opts(State),
                                         Output, dialyzer:run(Opts2)),
              {Warnings, State};
          false ->
              Opts2 = [{warnings, no_warnings()},
  
negative.code:             Warnings
      end.
  
  format_warnings(State, Output, Warnings) ->
      Opts = rebar_state:opts(State),
      Warnings1 = rebar_dialyzer_format:format_warnings(Opts, Warnings),
      console_warnings(Warnings1),
  
      OutputFormat = get_config(State, output_format, formatted),
      file_warnings(Output, Warnings, OutputFormat),
  
      length(Warnings).
  
  console_warnings(Warnings) ->
      _ = [?CONSOLE("~ts", [Warning]) || Warning <- Warnings],
      ok.
  
  file_warnings(_, [], _) ->
      ok;
  file_warnings(Output, Warnings, raw) ->
      Warnings1 = [[io_lib:format("~tp. \n", [W]) || W <- Warnings]],
      write_file_warnings(Output, Warnings1);
  file_warnings(Output, Warnings, formatted) ->
      Warnings1 = [[dialyzer:format_warning(Warning, fullpath), $\n]
                   || Warning <- Warnings],
      write_file_warnings(Output, Warnings1).
  
  write_file_warnings(Output, Warnings) ->
      case file:write_file(Output, Warnings, [append]) of
          ok ->
              ok;
          {error, Reason} ->
  