aboutsummaryrefslogtreecommitdiff
path: root/gcc/c-decl.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2007-12-16 00:08:47 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2007-12-16 00:08:47 +0100
commit9a60b229e8e64f37baf6ac78e0550291f542a9cc (patch)
tree504c98e8c6a5f6b4998669fdca1642b89bc80b93 /gcc/c-decl.c
parent249b9e5e0a8ebf5fcd02820b078ac81b30600f30 (diff)
downloadgcc-9a60b229e8e64f37baf6ac78e0550291f542a9cc.zip
gcc-9a60b229e8e64f37baf6ac78e0550291f542a9cc.tar.gz
gcc-9a60b229e8e64f37baf6ac78e0550291f542a9cc.tar.bz2
re PR bootstrap/34003 (gcc trunk unable to bootstrap itself; Unsatisfied symbols: ggc_free)
PR bootstrap/34003 * c-decl.c (merge_decls): Copy RTL from olddecl to newdecl. * config/pa/pa.c (pa_encode_section_info): If !first, preserve SYMBOL_FLAG_REFERENCED flag. * gcc.dg/pr34003-1.c: New test. * gcc.dg/pr34003-2.c: New. From-SVN: r130979
Diffstat (limited to 'gcc/c-decl.c')
-rw-r--r--gcc/c-decl.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/c-decl.c b/gcc/c-decl.c
index 1da57c2..033ff2e 100644
--- a/gcc/c-decl.c
+++ b/gcc/c-decl.c
@@ -1670,6 +1670,9 @@ merge_decls (tree newdecl, tree olddecl, tree newtype, tree oldtype)
}
}
+ /* Keep the old rtl since we can safely use it. */
+ if (HAS_RTL_P (olddecl))
+ COPY_DECL_RTL (olddecl, newdecl);
/* Merge the type qualifiers. */
if (TREE_READONLY (newdecl))