This fixes PR48148, we shouldn't keep abstract origin references for external decls.
Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2011-03-17 Richard Guenther <rguent...@suse.de> PR bootstrap/48148 * lto-cgraph.c (input_overwrite_node): Clear the abstract origin for decls in other ltrans units. (input_varpool_node): Likewise. Index: gcc/lto-cgraph.c =================================================================== --- gcc/lto-cgraph.c (revision 171091) +++ gcc/lto-cgraph.c (working copy) @@ -975,6 +975,7 @@ input_overwrite_node (struct lto_file_de || node->clone_of->decl != node->decl)) { DECL_EXTERNAL (node->decl) = 1; + DECL_ABSTRACT_ORIGIN (node->decl) = NULL_TREE; TREE_STATIC (node->decl) = 0; } node->alias = bp_unpack_value (bp, 1); @@ -1146,6 +1147,7 @@ input_varpool_node (struct lto_file_decl if (node->in_other_partition) { DECL_EXTERNAL (node->decl) = 1; + DECL_ABSTRACT_ORIGIN (node->decl) = NULL_TREE; TREE_STATIC (node->decl) = 0; } aliases_p = bp_unpack_value (&bp, 1);