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 $<

Reply via email to