From f3ce4abad03bbb47fab8535d8a24bf6fc3940c14 Mon Sep 17 00:00:00 2001
From: Tom Tromey <tromey@redhat.com>
Date: Fri, 3 Jan 2003 23:09:33 +0000
Subject: [PATCH] re PR java/8712 (ICE at fold-const.c:2934)

	Fix for PR java/8712:
	* expr.c (build_instanceof): Build an NE_EXPR, not a COND_EXPR,
	when simply checking against `null'.

From-SVN: r60859
---
 gcc/java/ChangeLog | 6 ++++++
 gcc/java/expr.c    | 4 +---
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index de4370dbeb12..e0723f2e7ab0 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,9 @@
+2003-01-03  Tom Tromey  <tromey@redhat.com>
+
+	Fix for PR java/8712:
+	* expr.c (build_instanceof): Build an NE_EXPR, not a COND_EXPR,
+	when simply checking against `null'.
+
 2003-01-03  Tom Tromey  <tromey@redhat.com>
 
 	* gcj.texi (Standard Properties): Document http.proxyHost and
diff --git a/gcc/java/expr.c b/gcc/java/expr.c
index 60f668b2ee76..a4b4b7a89813 100644
--- a/gcc/java/expr.c
+++ b/gcc/java/expr.c
@@ -1257,9 +1257,7 @@ build_instanceof (value, type)
       /* Anything except `null' is an instance of Object.  Likewise,
 	 if the object is known to be an instance of the class, then
 	 we only need to check for `null'.  */
-      expr = build (COND_EXPR, itype,
-		    value,
-		    boolean_true_node, boolean_false_node);
+      expr = build (NE_EXPR, itype, value, null_pointer_node);
     }
   else if (! TYPE_ARRAY_P (type)
 	   && ! TYPE_ARRAY_P (valtype)
-- 
GitLab