[PATCH diagnostics/fortran] Move gfc_warning (buffered) to the common diagnostics machinery
Tobias Burnus
burnus@net-b.de
Wed Dec 3 07:10:00 GMT 2014
Hello,
Manuel López-Ibáñez wrote:
> This is the final patch. Bootstrapped and regression tested.
>
> The diagnostics part is the same as in
> https://gcc.gnu.org/ml/gcc-patches/2014-11/msg03416.html, except for
> fixing the minor nit in a comment pointed out by Dodji.
>
> I decided that the best testing would be to convert all calls (except
> for a few that use multiple locations) and see what it breaks.
> Surprisingly nothing broke, which suggests that either is working as
> expected or the Fortran testsuite needs many more testcases ;-)
>
> Since I needed to check every gfc_warning call for the use of multiple
> locations, I took the opportunity to replace replace '%s' with %qs and
> add the appropriate OPT_W* option (I may have missed some, they can be
> added later as a follow-up).
>
> OK?
OK. Looks good to me. Thanks for the patch work!
Tobias
> gcc/testsuite/ChangeLog:
> 2014-12-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
>
> * gfortran.dg/warnings_are_errors_1.f90: Update warnings to errors.
> * gfortran.dg/warnings_are_errors_1.f: Likewise.
>
> gcc/fortran/ChangeLog:
>
> 2014-12-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
>
> * gfortran.h (gfc_warning): Now returns bool. Add overload that
> accepts opt.
> (gfc_warning_1): Declare.
> * error.c
> (pp_warning_buffer,warningcount_buffered,werrorcount_buffered): New.
> (gfc_buffer_error): Set pp_warning_buffer.flush_p.
> (gfc_clear_pp_buffer): New.
> (gfc_warning_1): Renamed from gfc_warning.
> (gfc_warning): Add three new overloads. One that takes just a
> format string and ellipsis, another that takes also a warning
> option, and another that takes also va_list instead of ellipsis.
> (gfc_clear_warning): Clear pp_warning_buffer.
> (gfc_warning_check): Flush pp_warning_buffer and update warning
> and werror counters.
> (gfc_diagnostics_init): Init pp_warning_buffer.
>
> * Update all gfc_warning calls that do not have multiple
> locations to use %qs and OPT_W*, otherwise use gfc_warning_1.
>
> gcc/ChangeLog:
>
> 2014-12-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
>
> * pretty-print.c (output_buffer::output_buffer): Init flush_p to true.
> (pp_flush): Flush only if flush_p.
> (pp_really_flush): New.
> * pretty-print.h (struct output_buffer): Add flush_p.
> (pp_really_flush): Declare.
More information about the Gcc-patches
mailing list