On Tuesday 10 June 2003 15:49, Mark Wielaard wrote: > Could you send the patch? > Attaching, hope it works. (I also downgraded -O2 to -O since that causes problems with some files, and added -Wno-deprecated to disable annoying warnings.)
Apply in (CVS)/freenet/src > > I couldn't find the bugreport. Do you have a bug number? > > I don't get the above failure, I get (with gcj 3.4 from CVS): > > Compiling: freenet/client/SplitFileInsertManager.java > freenet/client/SplitFileInsertManager.java:510: internal > compiler error: in lhd_incomplete_type_error, at langhooks.c:210 > Please submit a full bug report, > with preprocessed source if appropriate. > See <URL:http://gcc.gnu.org/bugs.html> for instructions. > make: *** [freenet/client/SplitFileInsertManager.o] Error 1 That's the inner class bug, which the patch should fix. You'll probably get another error (a known problem with initializing variables) but let me know if it works! > > Which is bugreport http://gcc.gnu.org/bugzilla/show_bug.cgi?id=10581 > There is currently no solution :( > Hmm, guess I misread the changelog. :( 3.4 CVS adds support for inner classes, but apparently there are still bugs.
--- Makefile.gcj 2003-06-10 16:56:39.000000000 -0500 +++ Makefile.gcj.new 2003-06-10 17:02:43.000000000 -0500 @@ -8,8 +8,8 @@ #SERVLETJAR=../lib/freenet-ext.jar SERVLETJAR=servlet.jar CP=.:$(SERVLETJAR) -GCJOPT=-O2 -GCJFLAGS=-g --encoding=UTF-8 $(GCJOPT) +GCJOPT=-O +GCJFLAGS=-g --encoding=UTF-8 -Wno-deprecated $(GCJOPT) GCJ_WITH_FLAGS = $(GCJ) $(GCJFLAGS) GCJCOMPILE = $(GCJ_WITH_FLAGS) -fclasspath=$(CP) $(JC1FLAGS) -MD -MT $@ -MF $(@:.o=.d) -c @@ -32,7 +32,7 @@ javax/servlet/http/HttpServletRequest.java \ javax/servlet/http/HttpServletResponse.java \ javax/servlet/http/HttpSession.java \ -javax/servlet/http/HttpSessionContext.java +javax/servlet/http/HttpSessionContext.java NODESRC=\ @@ -769,13 +769,13 @@ freenet/support/StripedBucketArray.java -NODEOBJS= $(NODESRC:.java=.o) freenet/client/RequestManager.o +NODEOBJS= $(NODESRC:.java=.o) freenet/client/RequestManager.o freenet/client/SplitFileInsertManager.o NODECLASSES= $(NODESRC:.java=.class) NODE=frednode -all: node +all: node node: $(NODE) @@ -791,7 +791,10 @@ -o $@ \ $(NODEOBJS) \ 'freenet/client/RequestManager$$EventConnector.o' 'freenet/client/RequestManager$$RequestInfo.o' 'freenet/client/RequestManager$$RetryableInfo.o' \ - $(SERVLETJAR) + 'freenet/client/SplitFileInsertManager$$InsertBlock.o' 'freenet/client/SplitFileInsertManager$$GetHeadersFromLength.o' \ + 'freenet/client/SplitFileInsertManager$$DoMakeMetadata.o' 'freenet/client/SplitFileInsertManager$$DoEncode.o' \ + 'freenet/client/SplitFileInsertManager$$MakeChecksum.o' \ + $(SERVLETJAR) jar: freenet.jar @@ -832,6 +835,27 @@ rm -f $(NODE) TAGS rm -fr build +freenet/client/SplitFileInsertManager.o: freenet/client/SplitFileInsertManager.java + @echo 'Compiling (2 stage):' $< + $(GCJ_WITH_FLAGS) -fclasspath=$(CP) -C $< + $(GCJCOMPILE) -o $@ freenet/client/SplitFileInsertManager.class + +freenet/client/SplitFileInsertManager$$InsertBlock.o: freenet/client/SplitFileInsertManager.class + $(GCJCOMPILE) -o 'freenet/client/SplitFileInsertManager$$InsertBlock.o' 'freenet/client/SplitFileInsertManager$$InsertBlock.class' + +freenet/client/SplitFileInsertManager$$GetHeadersFromLength.o: freenet/client/SplitFileInsertManager.class + $(GCJCOMPILE) -o 'freenet/client/SplitFileInsertManager$$GetHeadersFromLength.o' 'freenet/client/SplitFileInsertManager$$GetHeadersFromLength.class' + +freenet/client/SplitFileInsertManager$$DoEncode.o: freenet/client/SplitFileInsertManager.class + $(GCJCOMPILE) -o 'freenet/client/SplitFileInsertManager$$DoEncode.o' 'freenet/client/SplitFileInsertManager$$DoEncode.class' + +freenet/client/SplitFileInsertManager$$DoMakeMetadata.o: freenet/client/SplitFileInsertManager.class + $(GCJCOMPILE) -o 'freenet/client/SplitFileInsertManager$$DoMakeMetadata.o' 'freenet/client/SplitFileInsertManager$$DoMakeMetadata.class' + +freenet/client/SplitFileInsertManager$$MakeChecksum.o: freenet/client/SplitFileInsertManager.class + $(GCJCOMPILE) -o 'freenet/client/SplitFileInsertManager$$MakeChecksum.o' 'freenet/client/SplitFileInsertManager$$MakeChecksum.class' + + freenet/client/RequestManager.o: freenet/client/RequestManager.java @echo 'Compiling (2 stage):' $< $(GCJ_WITH_FLAGS) -fclasspath=$(CP) -C $<
