aboutsummaryrefslogtreecommitdiff
path: root/gcc/java
diff options
context:
space:
mode:
authorAndrew Pinski <pinskia@physics.uc.edu>2004-06-08 13:27:38 +0000
committerAndrew Pinski <pinskia@gcc.gnu.org>2004-06-08 06:27:38 -0700
commitc1b69e3ca2ede08266a6dd101f2903b08db71eb6 (patch)
tree83d005d524a7341669fe7170f643e6e88ccf4aaa /gcc/java
parentd599f32955972ba057772d1dfaa85836457bbbfc (diff)
downloadgcc-c1b69e3ca2ede08266a6dd101f2903b08db71eb6.zip
gcc-c1b69e3ca2ede08266a6dd101f2903b08db71eb6.tar.gz
gcc-c1b69e3ca2ede08266a6dd101f2903b08db71eb6.tar.bz2
re PR java/15769 (ICE: infinite recursion through gimplify_expr)
2004-06-08 Andrew Pinski <pinskia@physics.uc.edu> PR java/15769 * expr.c (java_truthvalue_conversion): Handle UNEQ_EXPR, UNLE_EXPR, UNGE_EXPR, UNLT_EXPR, UNGT_EXPR, ORDERED_EXPR, and UNORDERED_EXPR as comparison operators, i.e. return the expression. From-SVN: r82756
Diffstat (limited to 'gcc/java')
-rw-r--r--gcc/java/ChangeLog8
-rw-r--r--gcc/java/expr.c8
2 files changed, 14 insertions, 2 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index 967233a..6c8af8a 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,11 @@
+2004-06-08 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR java/15769
+ * expr.c (java_truthvalue_conversion): Handle
+ UNEQ_EXPR, UNLE_EXPR, UNGE_EXPR, UNLT_EXPR, UNGT_EXPR,
+ ORDERED_EXPR, and UNORDERED_EXPR as comparison operators,
+ i.e. return the expression.
+
2004-06-03 Mark G. Adams <mark.g.adams@sympatico.ca>
* gjavah.c: Include version.h
diff --git a/gcc/java/expr.c b/gcc/java/expr.c
index aa06974..86a7899 100644
--- a/gcc/java/expr.c
+++ b/gcc/java/expr.c
@@ -160,12 +160,16 @@ java_truthvalue_conversion (tree expr)
switch (TREE_CODE (expr))
{
- case EQ_EXPR:
- case NE_EXPR: case LE_EXPR: case GE_EXPR: case LT_EXPR: case GT_EXPR:
+ case EQ_EXPR: case NE_EXPR: case UNEQ_EXPR: case LTGT_EXPR:
+ case LE_EXPR: case GE_EXPR: case LT_EXPR: case GT_EXPR:
+ case UNLE_EXPR: case UNGE_EXPR: case UNLT_EXPR: case UNGT_EXPR:
+ case ORDERED_EXPR: case UNORDERED_EXPR:
case TRUTH_ANDIF_EXPR:
case TRUTH_ORIF_EXPR:
case TRUTH_AND_EXPR:
case TRUTH_OR_EXPR:
+ case TRUTH_XOR_EXPR:
+ case TRUTH_NOT_EXPR:
case ERROR_MARK:
return expr;