diff options
author | Geoffrey Keating <geoffk@apple.com> | 2003-05-02 18:07:01 +0000 |
---|---|---|
committer | Geoffrey Keating <geoffk@gcc.gnu.org> | 2003-05-02 18:07:01 +0000 |
commit | 7454096f706828364fc50756a67df3a6269482ac (patch) | |
tree | 992bf85b2fbfa8e60dad749a0593646f3ce2501b | |
parent | 96c4a002318730e8d1dbc206fa8bf09733a6b33b (diff) | |
download | gcc-7454096f706828364fc50756a67df3a6269482ac.zip gcc-7454096f706828364fc50756a67df3a6269482ac.tar.gz gcc-7454096f706828364fc50756a67df3a6269482ac.tar.bz2 |
c-semantics.c (genrtl_switch_stmt, [...]): Call expand_stmt on result of expand_unreachable_stmt.
* c-semantics.c (genrtl_switch_stmt, genrtl_if_stmt): Call
expand_stmt on result of expand_unreachable_stmt.
From-SVN: r66392
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/c-semantics.c | 15 |
2 files changed, 13 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9c43843..88e3f7d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2003-05-02 Geoffrey Keating <geoffk@apple.com> + + * c-semantics.c (genrtl_switch_stmt, genrtl_if_stmt): Call + expand_stmt on result of expand_unreachable_stmt. + 2003-05-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> * doc/contrib.texi (Contributors): Add Daniel Berlin. diff --git a/gcc/c-semantics.c b/gcc/c-semantics.c index 19ea48e..522d563 100644 --- a/gcc/c-semantics.c +++ b/gcc/c-semantics.c @@ -416,19 +416,20 @@ genrtl_if_stmt (t) expand_start_cond (cond, 0); if (THEN_CLAUSE (t)) { + tree nextt = THEN_CLAUSE (t); + if (cond && integer_zerop (cond)) - expand_unreachable_stmt (THEN_CLAUSE (t), warn_notreached); - else - expand_stmt (THEN_CLAUSE (t)); + nextt = expand_unreachable_stmt (nextt, warn_notreached); + expand_stmt (nextt); } if (ELSE_CLAUSE (t)) { + tree nextt = ELSE_CLAUSE (t); expand_start_else (); if (cond && integer_nonzerop (cond)) - expand_unreachable_stmt (ELSE_CLAUSE (t), warn_notreached); - else - expand_stmt (ELSE_CLAUSE (t)); + nextt = expand_unreachable_stmt (nextt, warn_notreached); + expand_stmt (nextt); } expand_end_cond (); } @@ -687,7 +688,7 @@ genrtl_switch_stmt (t) emit_line_note (input_filename, input_line); expand_start_case (1, cond, TREE_TYPE (cond), "switch statement"); - expand_unreachable_stmt (SWITCH_BODY (t), warn_notreached); + expand_stmt (expand_unreachable_stmt (SWITCH_BODY (t), warn_notreached)); expand_end_case_type (cond, SWITCH_TYPE (t)); } |