aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/ipa.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index daf8ce8..3c7b84b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2009-11-12 Jan Hubicka <jh@suse.cz>
+
+ * ipa.c (function_and_variable_visibility): Fix my accidentail commit and
+ clear DECL_COMMON on localized declarations.
+
2009-11-12 Bernd Schmidt <bernd.schmidt@analog.com>
PR rtl-opt/38582
diff --git a/gcc/ipa.c b/gcc/ipa.c
index bf8faa9..dd0b76c 100644
--- a/gcc/ipa.c
+++ b/gcc/ipa.c
@@ -318,8 +318,8 @@ function_and_variable_visibility (bool whole_program)
{
if (!vnode->finalized)
continue;
- gcc_assert ((!DECL_WEAK (vnode->decl) && !DECL_COMMON (vnode->decl) && !DECL_COMDAT (vnode->decl))
- || TREE_PUBLIC (vnode->decl) || DECL_EXTERNAL (node->decl));
+ gcc_assert ((!DECL_WEAK (vnode->decl) && !DECL_COMMON (vnode->decl))
+ || TREE_PUBLIC (vnode->decl) || DECL_EXTERNAL (vnode->decl));
if (vnode->needed
&& (DECL_COMDAT (vnode->decl) || TREE_PUBLIC (vnode->decl))
&& (!whole_program
@@ -337,6 +337,7 @@ function_and_variable_visibility (bool whole_program)
{
gcc_assert (whole_program || !TREE_PUBLIC (vnode->decl));
TREE_PUBLIC (vnode->decl) = 0;
+ DECL_COMMON (vnode->decl) = 0;
}
gcc_assert (TREE_STATIC (vnode->decl));
}