This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

PR c/c++/diagnostics/66098 Take -Werror into account when deciding what was the command-line status


When I fixed PR59304, I forgot that a command-line warning can be also
an error if -Werror was enabled. This introduced a regression since
anything enabled in the command-line together with -Werror would get
initially classified as a warning when reaching the first #pragma GCC
diagnostic, and this will be the setting after a #pragma pop.

Options that appear as arguments of -W[no-]error= are not affected by
this since those are initially classified as errors/warnings even
before reaching the first #pragma, thus the pop sets them correctly
(before and after this patch). Nonetheless, the tests also check that
they work correctly.

Boot&regtested on x86_64-linux-gnu.

OK?


gcc/ChangeLog:

2015-07-29  Manuel LÃpez-IbÃÃez  <manu@gcc.gnu.org>

    PR c/66098
    PR c/66711
    * diagnostic.c (diagnostic_classify_diagnostic): Take -Werror into
    account when deciding what was the command-line status.

gcc/testsuite/ChangeLog:

2015-07-29  Manuel LÃpez-IbÃÃez  <manu@gcc.gnu.org>

    PR c/66098
    PR c/66711
    * gcc.dg/pragma-diag-3.c: New test.
    * gcc.dg/pragma-diag-4.c: New test.

Attachment: fix-pr66098.diff
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]