anchor.diff:  compute_expected_output(_Options, clean_code) ->
       "";
   compute_expected_output(Options, warningful_code) ->
  -    WarnOpt = get_warning_opt(Options),
  -    ErrOpt = get_error_opt(Options),
  +    WarnOpt = get_warning_opt_from_perspective_of_output(Options),
  +    ErrOpt = get_error_opt_from_perspective_of_output(Options),
       case {WarnOpt, ErrOpt} of
           {report, report} -> non_empty_list;
           {report, return} -> non_empty_list;
  
positive.code:     [e] = M:get_enum_names(),
      unload_code(M).
  
  %% --- Returning/reporting warnings/errors tests ----------
  %% ... when compiling to file/binary
  %% ... when there are/aren't warnings/errors
  
  report_or_return_warnings_or_errors_test_() ->
      %% Without increased timeout, this test sometimes times
      %% out on my slow machine (1.6 GHz Atom N270)
      {timeout,58,fun report_or_return_warnings_or_errors_test_aux/0}.
  
  report_or_return_warnings_or_errors_test_aux() ->
  
negative.code: compute_expected_output(Options, write_fails) ->
      compute_expected_output(Options, erroneous_code);
  compute_expected_output(Options, erroneous_code) ->
      WarnOpt = get_warning_opt_from_perspective_of_output(Options),
      ErrOpt = get_error_opt_from_perspective_of_output(Options),
      case {WarnOpt, ErrOpt} of
          {report, report} -> non_empty_list;
          {report, return} -> "";
  