aboutsummaryrefslogtreecommitdiff
path: root/gcc/cgraphunit.c
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2012-05-18 11:44:52 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2012-05-18 11:44:52 +0000
commit2d4bf241b00a817a194cf12178fdc3f19783b079 (patch)
treedf9585f0f8a48e34eed5f8e1df8f0b7924da5802 /gcc/cgraphunit.c
parenta7745367d3fae031e5d73b488baaffcbdc562833 (diff)
* cgraphunit.c (varpool_finalize_decl): Allow external decls.
(mark_functions_to_output): Fix sanity check. * ipa.c (function_and_variable_visibility): Remove TREE_STATIC check. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187651 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cgraphunit.c')
-rw-r--r--gcc/cgraphunit.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c
index 97e810e5f2a..7dae2c8e820 100644
--- a/gcc/cgraphunit.c
+++ b/gcc/cgraphunit.c
@@ -819,7 +819,7 @@ varpool_finalize_decl (tree decl)
{
struct varpool_node *node = varpool_node (decl);
- gcc_assert (TREE_STATIC (decl));
+ gcc_assert (TREE_STATIC (decl) || DECL_EXTERNAL (decl));
if (node->finalized)
return;
@@ -1156,6 +1156,7 @@ mark_functions_to_output (void)
have analyzed node pointing to it. */
&& !node->symbol.in_other_partition
&& !node->alias
+ && !node->clones
&& !DECL_EXTERNAL (decl))
{
dump_cgraph_node (stderr, node);