From: Geoffrey Keating Date: Thu, 14 Jun 2007 20:56:25 +0000 (+0000) Subject: re PR libgcj/31093 (Multicast PromiscuousTraffic) X-Git-Tag: releases/gcc-4.3.0~4448 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=7dbd86a54129ec1d59bb967256b368facfea29cd;p=thirdparty%2Fgcc.git re PR libgcj/31093 (Multicast PromiscuousTraffic) PR 31093 * decl2.c (determine_visibility): Remove duplicate code for handling type info. From-SVN: r125721 --- diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index f9ca0508ddc3..39466304f24f 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2007-06-14 Geoff Keating + + PR 31093 + * decl2.c (determine_visibility): Remove duplicate code for + handling type info. + 2007-06-12 Ian Lance Taylor PR libstdc++/29286 diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c index 3e18c4a4c19b..4d46410f6adf 100644 --- a/gcc/cp/decl2.c +++ b/gcc/cp/decl2.c @@ -1698,10 +1698,6 @@ determine_visibility (tree decl) class can influence the visibility of the DECL. */ if (DECL_CLASS_SCOPE_P (decl)) class_type = DECL_CONTEXT (decl); - else if (TREE_CODE (decl) == VAR_DECL - && DECL_TINFO_P (decl) - && CLASS_TYPE_P (TREE_TYPE (DECL_NAME (decl)))) - class_type = TREE_TYPE (DECL_NAME (decl)); else { /* Not a class member. */ diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index fdd9582b85f3..4d7a16a625e2 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2007-06-14 Geoff Keating + + PR 31093 + * g++.dg/ext/visibility/anon4.C: New. + 2007-06-14 Uros Bizjak PR target/32268 diff --git a/gcc/testsuite/g++.dg/ext/visibility/anon4.C b/gcc/testsuite/g++.dg/ext/visibility/anon4.C new file mode 100644 index 000000000000..6d5d58ec3473 --- /dev/null +++ b/gcc/testsuite/g++.dg/ext/visibility/anon4.C @@ -0,0 +1,16 @@ +// PR c++/31903 +// Test for anonymous namespace internal linkage, for typeinfo + +// { dg-do compile } +// { dg-final { scan-assembler-not "globl.*_ZTIN*3fooE" } } + +#include +namespace +{ + class foo + { + virtual void bar(); + }; +} + +const std::type_info &X = typeid(foo);