diff options
author | Jan Hubicka <jh@suse.cz> | 2009-11-12 07:50:19 +0100 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2009-11-12 06:50:19 +0000 |
commit | fcc993f6f58f66f6d34bf3de8da27bf9f34680c7 (patch) | |
tree | 571de9eb29a8c6efe78c80aa322723a6cb399710 /gcc/ipa.c | |
parent | 0a8fff5778dd361e64a01c1e2567f7d06d08c275 (diff) | |
download | gcc-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/ipa.c')
-rw-r--r-- | gcc/ipa.c | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -292,6 +292,7 @@ function_and_variable_visibility (bool whole_program) for (node = cgraph_nodes; node; node = node->next) { + gcc_assert (!DECL_WEAK (node->decl) || TREE_PUBLIC (node->decl) || DECL_EXTERNAL (node->decl)); if (cgraph_externally_visible_p (node, whole_program)) { gcc_assert (!node->global.inlined_to); @@ -316,6 +317,8 @@ function_and_variable_visibility (bool whole_program) { if (!vnode->finalized) continue; + gcc_assert ((!DECL_WEAK (vnode->decl) || DECL_COMMON (vnode->decl)) + || TREE_PUBLIC (vnode->decl) || DECL_EXTERNAL (node->decl)); if (vnode->needed && (DECL_COMDAT (vnode->decl) || TREE_PUBLIC (vnode->decl)) && (!whole_program |