aboutsummaryrefslogtreecommitdiff
path: root/gcc/java/java-tree.h
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2002-11-06 00:01:01 +0000
committerTom Tromey <tromey@gcc.gnu.org>2002-11-06 00:01:01 +0000
commitc034b4535845e25b6d4ba62be5bccb86ee7278c6 (patch)
tree2b6700e1b5e792d259ddb86880b95e93c8315f4b /gcc/java/java-tree.h
parent112615e7d3db8aae00b002543db3ddf94e8e31a2 (diff)
downloadgcc-c034b4535845e25b6d4ba62be5bccb86ee7278c6.zip
gcc-c034b4535845e25b6d4ba62be5bccb86ee7278c6.tar.gz
gcc-c034b4535845e25b6d4ba62be5bccb86ee7278c6.tar.bz2
re PR java/6388 (Integer.MIN_VALUE == 0x80000000 optimized to false on powerpc)
Fix for PR java/6388. * lex.h (JAVA_INTEGRAL_RANGE_ERROR): Wrap in do...while. * java-tree.h (enum java_tree_index): New values JTI_DECIMAL_INT_MAX_NODE, JTI_DECIMAL_LONG_MAX_NODE. (decimal_int_max, decimal_long_max): New defines. * lex.c (yylex): Rewrote range checking. Sign extend literals. (error_if_numeric_overflow): Rewrote range checking. * decl.c (java_init_decl_processing): Initialize decimal_int_max, decimal_long_max. From-SVN: r58843
Diffstat (limited to 'gcc/java/java-tree.h')
-rw-r--r--gcc/java/java-tree.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/java/java-tree.h b/gcc/java/java-tree.h
index bb355fa..051e41b 100644
--- a/gcc/java/java-tree.h
+++ b/gcc/java/java-tree.h
@@ -275,6 +275,9 @@ enum java_tree_index
JTI_UNSIGNED_INT_TYPE_NODE,
JTI_UNSIGNED_LONG_TYPE_NODE,
+ JTI_DECIMAL_INT_MAX_NODE,
+ JTI_DECIMAL_LONG_MAX_NODE,
+
JTI_BOOLEAN_TYPE_NODE,
JTI_OBJECT_TYPE_NODE,
@@ -441,6 +444,11 @@ extern GTY(()) tree java_global_trees[JTI_MAX];
#define unsigned_long_type_node \
java_global_trees[JTI_UNSIGNED_LONG_TYPE_NODE]
+#define decimal_int_max \
+ java_global_trees[JTI_DECIMAL_INT_MAX_NODE]
+#define decimal_long_max \
+ java_global_trees[JTI_DECIMAL_LONG_MAX_NODE]
+
#define boolean_type_node \
java_global_trees[JTI_BOOLEAN_TYPE_NODE]