aboutsummaryrefslogtreecommitdiff
path: root/gcc/integrate.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2003-10-18 20:36:05 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2003-10-18 18:36:05 +0000
commit8a2b3848ff373b6333ee44b38133d864b7c0dcfa (patch)
tree7d3892197b0a6b36f32b0421b68b8b00e714fa66 /gcc/integrate.c
parentdafee8e3070bf77351118157c5fabb931e8c2541 (diff)
downloadgcc-8a2b3848ff373b6333ee44b38133d864b7c0dcfa.zip
gcc-8a2b3848ff373b6333ee44b38133d864b7c0dcfa.tar.gz
gcc-8a2b3848ff373b6333ee44b38133d864b7c0dcfa.tar.bz2
* integrate.c (copy_decl_for_inlining): Fix copying of copies.
From-SVN: r72646
Diffstat (limited to 'gcc/integrate.c')
-rw-r--r--gcc/integrate.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/integrate.c b/gcc/integrate.c
index 21a738e..ec1c7de 100644
--- a/gcc/integrate.c
+++ b/gcc/integrate.c
@@ -381,7 +381,10 @@ copy_decl_for_inlining (tree decl, tree from_fn, tree to_fn)
/* Set the DECL_ABSTRACT_ORIGIN so the debugging routines know what
declaration inspired this copy. */
- DECL_ABSTRACT_ORIGIN (copy) = DECL_ORIGIN (decl);
+ if (DECL_ABSTRACT_ORIGIN (decl))
+ DECL_ABSTRACT_ORIGIN (copy) = DECL_ABSTRACT_ORIGIN (decl);
+ else
+ DECL_ABSTRACT_ORIGIN (copy) = DECL_ORIGIN (decl);
/* The new variable/label has no RTL, yet. */
if (!TREE_STATIC (copy) && !DECL_EXTERNAL (copy))