aboutsummaryrefslogtreecommitdiff
path: root/gcc/java/java-tree.h
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2002-05-07 03:32:01 +0000
committerTom Tromey <tromey@gcc.gnu.org>2002-05-07 03:32:01 +0000
commit486e8c0cd34a187feb4adf908c183274a93cb654 (patch)
tree7159ea0ab41b06803b073585f69939e4604b03d4 /gcc/java/java-tree.h
parent61e0b50fd7a184cc5f611a0bbaceabc44fa6eb0f (diff)
downloadgcc-486e8c0cd34a187feb4adf908c183274a93cb654.zip
gcc-486e8c0cd34a187feb4adf908c183274a93cb654.tar.gz
gcc-486e8c0cd34a187feb4adf908c183274a93cb654.tar.bz2
re PR java/5941 (incorrect "Unreachable statement" error)
Fix for PR java/5941: * parse.y (finish_for_loop): Set SUPPRESS_UNREACHABLE_ERROR for loop update expression. (java_complete_lhs): Use SUPPRESS_UNREACHABLE_ERROR. * java-tree.h (SUPPRESS_UNREACHABLE_ERROR): New macro. From-SVN: r53247
Diffstat (limited to 'gcc/java/java-tree.h')
-rw-r--r--gcc/java/java-tree.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/java/java-tree.h b/gcc/java/java-tree.h
index f591b5f..e0dbe48 100644
--- a/gcc/java/java-tree.h
+++ b/gcc/java/java-tree.h
@@ -43,6 +43,7 @@ struct JCF;
0: IS_A_SINGLE_IMPORT_CLASSFILE_NAME_P (in IDENTIFIER_NODE)
RESOLVE_EXPRESSION_NAME_P (in EXPR_WITH_FILE_LOCATION)
FOR_LOOP_P (in LOOP_EXPR)
+ SUPPRESS_UNREACHABLE_ERROR (for other _EXPR nodes)
ANONYMOUS_CLASS_P (in RECORD_TYPE)
ARG_FINAL_P (in TREE_LIST)
1: CLASS_HAS_SUPER_FLAG (in TREE_VEC).
@@ -1503,6 +1504,12 @@ extern tree *type_map;
declared with the final modifier */
#define ARG_FINAL_P(NODE) TREE_LANG_FLAG_0 (NODE)
+/* True if NODE (some kind of EXPR, but not a WFL) should not give an
+ error if it is found to be unreachable. This can only be applied
+ to those EXPRs which can be used as the update expression of a
+ `for' loop. In particular it can't be set on a LOOP_EXPR. */
+#define SUPPRESS_UNREACHABLE_ERROR(NODE) TREE_LANG_FLAG_0 (NODE)
+
/* True if EXPR (a WFL in that case) resolves into a package name */
#define RESOLVE_PACKAGE_NAME_P(WFL) TREE_LANG_FLAG_3 (WFL)