https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94492

--- Comment #1 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jason Merrill <ja...@gcc.gnu.org>:

https://gcc.gnu.org/g:620cd7861e1266991c9c2a82e1e2d5f4d723ec88

commit r12-1144-g620cd7861e1266991c9c2a82e1e2d5f4d723ec88
Author: Jason Merrill <ja...@redhat.com>
Date:   Tue Apr 27 17:13:39 2021 -0400

    c++: -Wdeprecated-copy and #pragma diagnostic [PR94492]

    -Wdeprecated-copy was depending only on the state of the warning at the
    point where we call the function, making it hard to use #pragma diagnostic
    to suppress the warning for a particular implicitly declared function.

    But checking whether the warning is enabled at the location of the implicit
    declaration turned out to be a bit complicated; option_enabled only tests
    whether it was enabled at the start of compilation, the actual test only
    existed in the middle of diagnostic_report_diagnostic.  So this patch
    factors it out and adds a new warning_enabled function to diagnostic.h.

    gcc/ChangeLog:

            PR c++/94492
            * diagnostic.h (warning_enabled_at): Declare.
            * diagnostic.c (diagnostic_enabled): Factor out from...
            (diagnostic_report_diagnostic): ...here.
            (warning_enabled_at): New.

    gcc/cp/ChangeLog:

            PR c++/94492
            * decl2.c (cp_warn_deprecated_use): Check warning_enabled_at.

    gcc/testsuite/ChangeLog:

            PR c++/94492
            * g++.dg/cpp0x/depr-copy4.C: New test.
  • [Bug c++/94492] no way to silen... cvs-commit at gcc dot gnu.org via Gcc-bugs

Reply via email to