diff options
author | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-05-13 18:58:56 +0000 |
---|---|---|
committer | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-05-13 18:58:56 +0000 |
commit | 10f6a2691da04b880014abffa51a058893b669ef (patch) | |
tree | 38e4eda90974c27801ffbbf2262cd0f625dedcde /gcc/c-semantics.c | |
parent | 6971805a001c9f86f14f6e80f88ae062eb547f86 (diff) | |
download | gcc-10f6a2691da04b880014abffa51a058893b669ef.tar.gz |
* tree.h (STRIP_MAIN_TYPE_NOPS): New macro.
* tree.c (iterative_hash_expr): New fn.
* c-semantics.c (emit_local_var): Don't mess with temp slots if
there's no initializer.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@66775 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-semantics.c')
-rw-r--r-- | gcc/c-semantics.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/gcc/c-semantics.c b/gcc/c-semantics.c index 59620ca3d0f..91ab8738033 100644 --- a/gcc/c-semantics.c +++ b/gcc/c-semantics.c @@ -286,14 +286,17 @@ emit_local_var (decl) expand_decl (decl); } - /* Actually do the initialization. */ - if (stmts_are_full_exprs_p ()) - expand_start_target_temps (); + if (DECL_INITIAL (decl)) + { + /* Actually do the initialization. */ + if (stmts_are_full_exprs_p ()) + expand_start_target_temps (); - expand_decl_init (decl); + expand_decl_init (decl); - if (stmts_are_full_exprs_p ()) - expand_end_target_temps (); + if (stmts_are_full_exprs_p ()) + expand_end_target_temps (); + } } /* Helper for generating the RTL at the beginning of a scope. */ |