PR c/88546 - Copy attribute unusable for weakrefs
authorMartin Sebor <msebor@redhat.com>
Sat, 5 Jan 2019 00:57:30 +0000 (00:57 +0000)
committerMartin Sebor <msebor@gcc.gnu.org>
Sat, 5 Jan 2019 00:57:30 +0000 (17:57 -0700)
commit29d2485270f422a4b89bfa79e448843509cd0568
treef1e8cf0a03dff36fd00f2c23d9cebce2ecbc3871
parentf6be1179bb66624403d0f55620d67344d9d98c51
PR c/88546 - Copy attribute unusable for weakrefs

gcc/c-family/ChangeLog:

PR c/88546
* c-attribs.c (handle_copy_attribute): Avoid copying attribute leaf.
Handle C++ empty throw specification and C11 _Noreturn.
(has_attribute): Also handle C11 _Noreturn.

gcc/ChangeLog:

PR c/88546
* attribs.c (decls_mismatched_attributes): Avoid warning for attribute
leaf.

gcc/testsuite/ChangeLog:

PR c/88546
* g++.dg/ext/attr-copy.C: New test.
* gcc.dg/attr-copy-4.c: Disable macro expansion tracking.
* gcc.dg/attr-copy-6.c: New test.
* gcc.dg/attr-copy-7.c: New test.

From-SVN: r267591
gcc/ChangeLog
gcc/attribs.c
gcc/c-family/ChangeLog
gcc/c-family/c-attribs.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/ext/attr-copy.C [new file with mode: 0644]
gcc/testsuite/gcc.dg/attr-copy-4.c
gcc/testsuite/gcc.dg/attr-copy-6.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/attr-copy-7.c [new file with mode: 0644]
libgcc/gthr-posix.h
libgfortran/libgfortran.h