PATCH RFA: Avoid crash in Java compiler

Ian Lance Taylor ian@airs.com
Wed Mar 30 17:11:00 GMT 2005


Ian Lance Taylor <ian@airs.com> writes:

> I was testing a bootstrap on i386-unknown-netbsdelf1.6.1, and I
> happened to have CLASSPATH set in my environment.  I got an error
> which ended up in a compiler ICE.  I do not get the error if CLASSPATH
> is not set, but of course the compiler should not ICE.

And here is the patch to avoid using the environment variable
CLASSPATH when building libjava.  This at least continues past the
point of failure, and seems fairly obvious.

OK to commit?

Ian


2005-03-29  Ian Lance Taylor  <ian@airs.com>

	* external/sax/Makefile.am (GCJ_WITH_FLAGS): Add "-fclasspath=".
	* external/sax/Makefile.in: Rebuild.
	* external/w3c_dom/Makefile.am (GCJ_WITH_FLAGS): Add
	"-fclasspath=".
	* external/w3c_dom/Makefile.in: Rebuild.


Index: external/sax/Makefile.am
===================================================================
RCS file: /cvs/gcc/gcc/libjava/external/sax/Makefile.am,v
retrieving revision 1.6
diff -u -r1.6 Makefile.am
--- external/sax/Makefile.am	28 Mar 2005 20:31:01 -0000	1.6
+++ external/sax/Makefile.am	29 Mar 2005 22:17:53 -0000
@@ -7,7 +7,7 @@
 
 ## The compiler with whatever flags we want for both -c and -C
 ## compiles.
-GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated -fbootclasspath=$(BOOTCLASSPATH)
+GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated -fclasspath= -fbootclasspath=$(BOOTCLASSPATH)
 
 BOOTCLASSPATH = $(here)'$(CLASSPATH_SEPARATOR)'$(srcdir)'$(CLASSPATH_SEPARATOR)'$(top_srcdir)'$(CLASSPATH_SEPARATOR)'$(top_builddir)
 
Index: external/sax/Makefile.in
===================================================================
RCS file: /cvs/gcc/gcc/libjava/external/sax/Makefile.in,v
retrieving revision 1.8
diff -u -r1.8 Makefile.in
--- external/sax/Makefile.in	28 Mar 2005 20:31:01 -0000	1.8
+++ external/sax/Makefile.in	29 Mar 2005 22:17:53 -0000
@@ -299,7 +299,7 @@
 
 # May be used by various substitution variables.
 gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
-GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated -fbootclasspath=$(BOOTCLASSPATH)
+GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated -fclasspath= -fbootclasspath=$(BOOTCLASSPATH)
 BOOTCLASSPATH = $(here)'$(CLASSPATH_SEPARATOR)'$(srcdir)'$(CLASSPATH_SEPARATOR)'$(top_srcdir)'$(CLASSPATH_SEPARATOR)'$(top_builddir)
 AM_GCJFLAGS = \
 	-B$(top_builddir) \
Index: external/w3c_dom/Makefile.am
===================================================================
RCS file: /cvs/gcc/gcc/libjava/external/w3c_dom/Makefile.am,v
retrieving revision 1.6
diff -u -r1.6 Makefile.am
--- external/w3c_dom/Makefile.am	28 Mar 2005 20:31:01 -0000	1.6
+++ external/w3c_dom/Makefile.am	29 Mar 2005 22:17:53 -0000
@@ -7,7 +7,7 @@
 
 ## The compiler with whatever flags we want for both -c and -C
 ## compiles.
-GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated -fbootclasspath=$(BOOTCLASSPATH)
+GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated -fclasspath= -fbootclasspath=$(BOOTCLASSPATH)
 
 BOOTCLASSPATH = $(here)'$(CLASSPATH_SEPARATOR)'$(srcdir)'$(CLASSPATH_SEPARATOR)'$(top_srcdir)'$(CLASSPATH_SEPARATOR)'$(top_builddir)
 
Index: external/w3c_dom/Makefile.in
===================================================================
RCS file: /cvs/gcc/gcc/libjava/external/w3c_dom/Makefile.in,v
retrieving revision 1.8
diff -u -r1.8 Makefile.in
--- external/w3c_dom/Makefile.in	28 Mar 2005 20:31:02 -0000	1.8
+++ external/w3c_dom/Makefile.in	29 Mar 2005 22:17:53 -0000
@@ -299,7 +299,7 @@
 
 # May be used by various substitution variables.
 gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
-GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated -fbootclasspath=$(BOOTCLASSPATH)
+GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated -fclasspath= -fbootclasspath=$(BOOTCLASSPATH)
 BOOTCLASSPATH = $(here)'$(CLASSPATH_SEPARATOR)'$(srcdir)'$(CLASSPATH_SEPARATOR)'$(top_srcdir)'$(CLASSPATH_SEPARATOR)'$(top_builddir)
 AM_GCJFLAGS = \
 	-B$(top_builddir) \



More information about the Java-patches mailing list