diff options
author | Jason Merrill <jason@redhat.com> | 2003-05-13 14:58:56 -0400 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2003-05-13 14:58:56 -0400 |
commit | 03307888f71f81829bc96f569b927a825e5ab2f4 (patch) | |
tree | 38e4eda90974c27801ffbbf2262cd0f625dedcde /gcc/c-semantics.c | |
parent | d660cefe65aba85a809c01e104b1480df13952d1 (diff) | |
download | gcc-03307888f71f81829bc96f569b927a825e5ab2f4.zip gcc-03307888f71f81829bc96f569b927a825e5ab2f4.tar.gz gcc-03307888f71f81829bc96f569b927a825e5ab2f4.tar.bz2 |
tree.h (STRIP_MAIN_TYPE_NOPS): New macro.
* 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.
From-SVN: r66775
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 59620ca..91ab873 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. */ |