aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJason Merrill <jason@casey.soma.redhat.com>2000-06-02 19:38:35 +0000
committerJason Merrill <jason@gcc.gnu.org>2000-06-02 15:38:35 -0400
commit2f8edb39a11e05ff6f1b82e38ceb37c71084cf6a (patch)
treee70cf2c6093642a4836388d78e458c276cfe4bfe /gcc
parent3ce74580600445aa4a01350c3c99468db4f23cae (diff)
downloadgcc-2f8edb39a11e05ff6f1b82e38ceb37c71084cf6a.zip
gcc-2f8edb39a11e05ff6f1b82e38ceb37c71084cf6a.tar.gz
gcc-2f8edb39a11e05ff6f1b82e38ceb37c71084cf6a.tar.bz2
* decl.c (store_return_init): Call put_var_into_stack.
From-SVN: r34364
Diffstat (limited to 'gcc')
-rw-r--r--gcc/cp/ChangeLog4
-rw-r--r--gcc/cp/decl.c3
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 1867f59..ebc064d 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,7 @@
+2000-06-02 Jason Merrill <jason@casey.soma.redhat.com>
+
+ * decl.c (store_return_init): Call put_var_into_stack.
+
2000-06-01 Mark Mitchell <mark@codesourcery.com>
* cp-tree.h (lang_decl_flags): Add anticipated_p.
diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c
index 55c7ba5..1cd6f43 100644
--- a/gcc/cp/decl.c
+++ b/gcc/cp/decl.c
@@ -169,6 +169,7 @@ static void make_rtl_for_nonlocal_decl PARAMS ((tree, tree, const char *));
static void push_cp_function_context PARAMS ((struct function *));
static void pop_cp_function_context PARAMS ((struct function *));
static void mark_binding_level PARAMS ((void *));
+static void mark_named_label_lists PARAMS ((void *, void *));
static void mark_cp_function_context PARAMS ((struct function *));
static void mark_saved_scope PARAMS ((void *));
static void mark_lang_function PARAMS ((struct language_function *));
@@ -14025,6 +14026,8 @@ store_return_init (decl)
here, we use the mode the back-end has already assigned for
the return value. */
DECL_RTL (decl) = gen_reg_rtx (GET_MODE (original_result_rtx));
+ if (TREE_ADDRESSABLE (decl))
+ put_var_into_stack (decl);
}
}