From: H.J. Lu Date: Wed, 7 Jul 2004 18:29:38 +0000 (+0000) Subject: re PR c++/16276 ([3.4 only] G++ generates local references to linkonce sections) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4681c50501dd2838e1e1125534d398a381b68862;p=gcc.git re PR c++/16276 ([3.4 only] G++ generates local references to linkonce sections) 2004-07-07 H.J. Lu PR c++/16276 * rtti.c (emit_tinfo_decl): Turn off DECL_ONE_ONLY if typeinfo is not public. From-SVN: r84215 --- diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 488d0377a00..851cd265f63 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2004-07-07 H.J. Lu + + PR c++/16276 + * rtti.c (emit_tinfo_decl): Turn off DECL_ONE_ONLY if typeinfo + is not public. + 2004-07-07 Nathan Sidwell * cp-tree.h (CLASSTYPE_N_BASECLASSES): Remove. diff --git a/gcc/cp/rtti.c b/gcc/cp/rtti.c index c23b186e178..8e0b9622a57 100644 --- a/gcc/cp/rtti.c +++ b/gcc/cp/rtti.c @@ -1461,7 +1461,11 @@ emit_tinfo_decl (tree decl) DECL_EXTERNAL (decl) = 0; TREE_PUBLIC (decl) = !non_public; if (non_public) - DECL_COMDAT (decl) = 0; + { + DECL_COMDAT (decl) = 0; + if (SUPPORTS_ONE_ONLY) + DECL_ONE_ONLY (decl) = 0; + } DECL_INITIAL (decl) = var_init; mark_used (decl);