From 98c07d7bd78d311fc95985791421bfde08f40a0b Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Fri, 5 Jul 2002 11:01:04 -0400 Subject: [PATCH] re PR rtl-optimization/7145 (g++ -O with structure initializer & return value optimization generates bad code) PR optimization/7145 * tree.c (cp_copy_res_decl_for_inlining): Also copy DECL_INITIAL. From-SVN: r55261 --- gcc/cp/ChangeLog | 6 ++++++ gcc/cp/tree.c | 1 + 2 files changed, 7 insertions(+) diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index a29f9baac81..ab5c1449a8e 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2002-07-05 Jason Merrill + + PR optimization/7145 + * tree.c (cp_copy_res_decl_for_inlining): Also copy DECL_INITIAL. + 2002-07-05 Nathan Sidwell Repair damage on weak-impared targets caused by my previous patch. @@ -555,6 +560,7 @@ 2002-05-18 Jason Merrill + PR c++/6611 * decl2.c (import_export_decl): If we clear DECL_NOT_REALLY_EXTERN, make sure DECL_EXTERNAL is set. diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c index 1fca146d4b1..b7b2123cd1c 100644 --- a/gcc/cp/tree.c +++ b/gcc/cp/tree.c @@ -2292,6 +2292,7 @@ cp_copy_res_decl_for_inlining (result, fn, caller, decl_map_, DECL_SOURCE_FILE (var) = DECL_SOURCE_FILE (nrv); DECL_SOURCE_LINE (var) = DECL_SOURCE_LINE (nrv); DECL_ABSTRACT_ORIGIN (var) = DECL_ORIGIN (nrv); + DECL_INITIAL (var) = DECL_INITIAL (nrv); splay_tree_insert (decl_map, (splay_tree_key) nrv, (splay_tree_value) var); -- 2.30.2