From 4c3f0abeb6415ac9ff6be223ce19ccf392af1345 Mon Sep 17 00:00:00 2001 From: Daniel Jacobowitz Date: Mon, 24 Mar 2003 04:02:23 +0000 Subject: [PATCH] re PR target/9797 ([ARM] miscompiles C99-style struct initializers) Fix PR target/9797. * stmt.c (expand_decl_init): Call push_temp_slots () and pop_temp_slots (). From-SVN: r64776 --- gcc/ChangeLog | 6 ++++++ gcc/stmt.c | 3 +++ 2 files changed, 9 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8002e2b3a06e..06c56fc1d7ca 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2003-03-23 Daniel Jacobowitz + + Fix PR target/9797. + * stmt.c (expand_decl_init): Call push_temp_slots () and + pop_temp_slots (). + 2003-03-23 Richard Henderson * cfgcleanup.c (try_optimize_cfg): Allow merging of tablejumps diff --git a/gcc/stmt.c b/gcc/stmt.c index 3fdcbeea5d35..4ecbc5ecc36d 100644 --- a/gcc/stmt.c +++ b/gcc/stmt.c @@ -4062,6 +4062,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)); @@ -4085,6 +4087,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; -- 2.47.2