From: Jason Merrill Date: Thu, 11 Jul 2002 21:13:08 +0000 (-0400) Subject: re PR c++/7279 (NRV related miscompilation) X-Git-Tag: releases/gcc-3.1.1~36 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cf91de3f765cad6b36e0e4511b926068d35fc819;p=thirdparty%2Fgcc.git re PR c++/7279 (NRV related miscompilation) PR c++/7279 * tree.c (cp_copy_res_decl_for_inlining): Also copy TREE_ADDRESSABLE. From-SVN: r55406 --- diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index ec6bea21db98..21f08875d8ef 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2002-07-11 Jason Merrill + + PR c++/7279 + * tree.c (cp_copy_res_decl_for_inlining): Also copy + TREE_ADDRESSABLE. + 2002-07-10 Jason Merrill PR c++/6255 diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c index fc2b8e285f08..748ab9a0b9ad 100644 --- a/gcc/cp/tree.c +++ b/gcc/cp/tree.c @@ -2284,7 +2284,11 @@ 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); + /* Don't lose initialization info. */ DECL_INITIAL (var) = DECL_INITIAL (nrv); + /* Don't forget that it needs to go in the stack. */ + TREE_ADDRESSABLE (var) = TREE_ADDRESSABLE (nrv); + splay_tree_insert (decl_map, (splay_tree_key) nrv, (splay_tree_value) var);