* ipa.c (function_and_variable_visibility): Verify that WEAK || COMMON
imply PUBLIC || EXTERNAL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154115
138bc75d-0d04-0410-961f-
82ee72b054a4
+2009-11-12 Jan Hubicka <jh@suse.cz>
+
+ * ipa.c (function_and_variable_visibility): Verify that WEAK || COMMON
+ imply PUBLIC || EXTERNAL.
+
2009-11-11 Andy Hutchinson <hutchinsonandy@gcc.gnu.org>
PR middle-end/41440
+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
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))
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);
{
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