diff options
author | drow <drow@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-03-12 16:45:25 +0000 |
---|---|---|
committer | drow <drow@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-03-12 16:45:25 +0000 |
commit | 5ed37c677358fbc0547f9d54b3fa8aec1b4b64c2 (patch) | |
tree | a37be3e05ef1d202f039242fe934d4567d04ab0d /gcc/stmt.c | |
parent | 6d4061d0f21bdce2839d2bc11a0a3d35c3aaf60b (diff) | |
download | ppe42-gcc-5ed37c677358fbc0547f9d54b3fa8aec1b4b64c2.tar.gz ppe42-gcc-5ed37c677358fbc0547f9d54b3fa8aec1b4b64c2.zip |
Fix PR target/9797 and PR c/9853.
* stmt.c (expand_decl_init): Call push_temp_slots () and
pop_temp_slots ().
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@64250 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/stmt.c')
-rw-r--r-- | gcc/stmt.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/stmt.c b/gcc/stmt.c index 74d5f3de38c..ea21a6dc80b 100644 --- a/gcc/stmt.c +++ b/gcc/stmt.c @@ -4043,6 +4043,8 @@ expand_decl_init (decl) /* Compute and store the initial value now. */ + push_temp_slots (); + if (DECL_INITIAL (decl) == error_mark_node) { enum tree_code code = TREE_CODE (TREE_TYPE (decl)); @@ -4066,6 +4068,7 @@ expand_decl_init (decl) /* Free any temporaries we made while initializing the decl. */ preserve_temp_slots (NULL_RTX); free_temp_slots (); + pop_temp_slots (); } /* CLEANUP is an expression to be executed at exit from this binding contour; |