aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2009-11-12 07:50:19 +0100
committerJan Hubicka <hubicka@gcc.gnu.org>2009-11-12 06:50:19 +0000
commitfcc993f6f58f66f6d34bf3de8da27bf9f34680c7 (patch)
tree571de9eb29a8c6efe78c80aa322723a6cb399710 /gcc/cp
parent0a8fff5778dd361e64a01c1e2567f7d06d08c275 (diff)
downloadgcc-fcc993f6f58f66f6d34bf3de8da27bf9f34680c7.zip
gcc-fcc993f6f58f66f6d34bf3de8da27bf9f34680c7.tar.gz
gcc-fcc993f6f58f66f6d34bf3de8da27bf9f34680c7.tar.bz2
decl2.c (constrain_visibility): Clear WEAK and COMMON flags.
* decl2.c (constrain_visibility): Clear WEAK and COMMON flags. * ipa.c (function_and_variable_visibility): Verify that WEAK || COMMON imply PUBLIC || EXTERNAL. From-SVN: r154115
Diffstat (limited to 'gcc/cp')
-rw-r--r--gcc/cp/ChangeLog4
-rw-r--r--gcc/cp/decl2.c2
2 files changed, 6 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 355cf99..9a28a49 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,7 @@
+2009-11-12 Jan Hubicka <jh@suse.cz>
+
+ * decl2.c (constrain_visibility): Clear WEAK and COMMON flags.
+
2009-11-11 Jason Merrill <jason@redhat.com>
PR c++/39131
diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c
index ba987f7..510aa8f 100644
--- a/gcc/cp/decl2.c
+++ b/gcc/cp/decl2.c
@@ -1883,6 +1883,8 @@ constrain_visibility (tree decl, int visibility)
if (!DECL_EXTERN_C_P (decl))
{
TREE_PUBLIC (decl) = 0;
+ DECL_WEAK (decl) = 0;
+ DECL_COMMON (decl) = 0;
DECL_COMDAT_GROUP (decl) = NULL_TREE;
DECL_INTERFACE_KNOWN (decl) = 1;
if (DECL_LANG_SPECIFIC (decl))