c++: Fix guard variable and attribute weak.
authorJason Merrill <jason@redhat.com>
Tue, 28 Jan 2020 20:15:20 +0000 (15:15 -0500)
committerJason Merrill <jason@redhat.com>
Tue, 28 Jan 2020 21:45:22 +0000 (16:45 -0500)
commit25d62480c89d6db90a66ba69f6dbaa820a1ac90b
tree13bf87eef5349bef8f54b786ede4feab866a2026
parent99eb1a824a69eb390bc104a1b91f901773866dd4
c++: Fix guard variable and attribute weak.

My patch for PR 91476 worked for decls that are implicitly comdat/weak due
to C++ linkage rules, but broke variables explicitly marked weak.

PR c++/93477
PR c++/91476
* decl2.c (copy_linkage): Do copy DECL_ONE_ONLY and DECL_WEAK.
gcc/cp/ChangeLog
gcc/cp/decl2.c
gcc/testsuite/g++.dg/abi/guard4.C [new file with mode: 0644]