diff options
author | Alexandre Petit-Bianco <apbianco@cygnus.com> | 1999-05-17 18:09:15 +0000 |
---|---|---|
committer | Alexandre Petit-Bianco <apbianco@gcc.gnu.org> | 1999-05-17 11:09:15 -0700 |
commit | 9dd939b278d1b6db70bb1311e7c761b655445d41 (patch) | |
tree | 80ee6003a0c6f1720fbf7025792c7cf23d73026d /gcc/java/parse.y | |
parent | 856216bbe352e0ebe97e8928e6a41906518ecccd (diff) | |
download | gcc-9dd939b278d1b6db70bb1311e7c761b655445d41.zip gcc-9dd939b278d1b6db70bb1311e7c761b655445d41.tar.gz gcc-9dd939b278d1b6db70bb1311e7c761b655445d41.tar.bz2 |
parse.y (statement_nsi:): Pop `for' statement block.
Mon May 17 18:01:40 1999 Alexandre Petit-Bianco <apbianco@cygnus.com>
* parse.y (statement_nsi:): Pop `for' statement block.
(java_complete_lhs): Labelled blocks containing no statement are
marked as completing normally.
From-SVN: r26976
Diffstat (limited to 'gcc/java/parse.y')
-rw-r--r-- | gcc/java/parse.y | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/java/parse.y b/gcc/java/parse.y index 64f7e18..84d2b25 100644 --- a/gcc/java/parse.y +++ b/gcc/java/parse.y @@ -1231,6 +1231,7 @@ statement_nsi: | if_then_else_statement_nsi | while_statement_nsi | for_statement_nsi + { $$ = exit_block (); } ; statement_without_trailing_substatement: @@ -7872,7 +7873,10 @@ java_complete_lhs (node) POP_LABELED_BLOCK (); if (LABELED_BLOCK_BODY (node) == empty_stmt_node) - LABELED_BLOCK_BODY (node) = NULL_TREE; + { + LABELED_BLOCK_BODY (node) = NULL_TREE; + CAN_COMPLETE_NORMALLY (node) = 1; + } else if (CAN_COMPLETE_NORMALLY (LABELED_BLOCK_BODY (node))) CAN_COMPLETE_NORMALLY (node) = 1; return node; |