[Bug libgcj/25593] Socket problems
--- Comment #1 from ovidr at users dot sourceforge dot net 2005-12-28 23:24 --- Created an attachment (id=10562) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10562&action=view) Testcase (HServer.java and HClient.java) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25593
[Bug libgcj/25593] New: Socket problems
When using jcraft's jsch ssh2 port forwarding in a gcj compiled application, connections terminate unexpectedly. It works fine in Sun's java. I've tried to make a test case with HServer/HClient. The server listens to a port, and then the client connects to it. The OutputStream is closed while the InputStream is still reading in another thread. --- On Sun's Java (win32 or linux): HServer: java.net.SocketException: Socket closed at java.net.SocketInputStream.read(SocketInputStream.java:162) at HServer$1.run(HServer.java:29) HClient: READ: 12 --- Win32 GCJ 4.0.2 (thisiscool.com) Hserver: java.io.IOException: An established connection was aborted by the software in your host machine. at .__ZN9HServer$13runEv (E:\dev\TURL\HServer.java) HClient: java.io.IOException: An existing connection was forcibly closed by the remote host. at .__ZN7HClient4mainEP6JArrayIPN4java4lang6StringEE (E:\dev\TURL\HClient.java) at ._main (C:\WINDOWS\TEMP\cc88.i) GCJ Linux: Hserver: java.io.IOException: Bad file descriptor at HServer$1.run (HServer) HClient: READ: 12 --- -- Summary: Socket problems Product: gcc Version: 4.0.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libgcj AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ovidr at users dot sourceforge dot net http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25593
[Bug libgcj/18266] SIGSEGV in GC_register_finalizer_inner ()
--- Additional Comments From ovidr at users dot sourceforge dot net 2005-07-19 15:06 --- I've spent a lot of time trying to make a testcase of this, but no luck yet. I can basically create a testapp with 2 threads. When they both access a synchronized method, and are forced to wait long enough (natObject.cc:907 spins 18 times before making a hard lock) you can drop the finalizer by inserting a WeakHashMap.put(this, null) call. (I force System.gc() regularly) In gdb I can see that heavy_lock_obj_finalization_proc is no longer called once the Reference::create() call has been made. I've done this a ton of times in a loop, but I just can't get the test app to crash. Is dropping the finalizer enough to cause a crash (over time)? I'm not sure what I'm missing, or what I can do to force this crash. My real app however does crash. I've recompiled libgcj and do get all the information originally requested from gdb from an above comment in yet another but similar backtrace. I don't know if it confirms that the problem is in dropping finalizers (or maybe that is a separate problem?), but thought I'd post it. Program received signal SIGSEGV, Segmentation fault. 0x404229f5 in GC_mark_from (mark_stack_top=0xc82b000, mark_stack=0xc82b000, mark_stack_limit=0xc83b000) at /home/gcc/gcc/boehm-gc/mark.c:724 724 descr = *(word *)(type_descr (gdb) bt #0 0x404229f5 in GC_mark_from (mark_stack_top=0xc82b000, mark_stack=0xc82b000, mark_stack_limit=0xc83b000) at /home/gcc/gcc/boehm-gc/mark.c:724 #1 0x4041eab8 in GC_finalize () at /home/gcc/gcc/boehm-gc/finalize.c:639 #2 0x4041ab83 in GC_finish_collection () at /home/gcc/gcc/boehm-gc/alloc.c:659 #3 0x4041a35b in GC_try_to_collect_inner (stop_func=0x40419c5c ) at /home/gcc/gcc/boehm-gc/alloc.c:376 #4 0x4041b3e8 in GC_collect_or_expand (needed_blocks=1, ignore_off_page=0) at /home/gcc/gcc/boehm-gc/alloc.c:996 #5 0x4041b683 in GC_allocobj (sz=4, kind=0) at /home/gcc/gcc/boehm- gc/alloc.c:1071 #6 0x40420679 in GC_generic_malloc_inner (lb=16, k=0) at /home/gcc/gcc/boehm- gc/malloc.c:136 #7 0x404217b3 in GC_generic_malloc_many (lb=16, k=0, result=0x4062b4a8) at /home/gcc/gcc/boehm-gc/mallocx.c:512 #8 0x4042b32d in GC_local_malloc_atomic (bytes=12) at /home/gcc/gcc/boehm- gc/pthread_support.c:334 #9 0x401f2ec7 in _Jv_AllocPtrFreeObj (size=12, klass=0x8816688) at java-gc.h:57 #10 0x401f1674 in _Jv_NewPrimArray (eltype=0x87a3be0, count=1) at /home/gcc/gcc/libjava/prims.cc:559 #11 0x08287db9 in org.eclipse.swt.widgets.Table.textCellDataProc(int, int, int, int, int) ( this=0x8940dc0, tree_column=146453640, cell=146453856, tree_model=206469928, iter=-1073753012, data=146439960) at Table.java:2704 #12 0x082b15b4 in org.eclipse.swt.widgets.Display.textCellDataProc(int, int, int, int, int) ( this=0x884ed48, tree_column=146453640, cell=146453856, tree_model=206469928, iter=-1073753012, data=146439960) at Display.java:3305 #13 0x4040aceb in ffi_call_SYSV () at /home/gcc/gcc/libffi/src/x86/sysv.S:60 #14 0x4040a8d2 in ffi_call (cif=0xbfffd0b8, fn=0x82b1544 , rvalue=0xbfffd0b0, avalue=0xbfffcfd0) at /home/gcc/gcc/libffi/src/x86/ffi.c:221 #15 0x4023e91e in _Jv_CallAnyMethodA (obj=0x884ed48, return_type=0x87a3be0, meth=0x87007c0, is_constructor=0 '\0', is_virtual_call=1 '\001', parameter_types=0xc7a5460, args=0xbfffd160, result=0xbfffd1d4, is_jni_call=1 '\001', iface=0x0) at /home/gcc/gcc/libjava/java/lang/reflect/natMethod.cc:495 #16 0x401fa956 in _Jv_JNI_CallAnyMethodV (env=0x87b28f8, obj=0x884ed48, klass=0x0, id=0x87007c0, vargs=0xbfffd250 "\210ÎéÎ÷ÎáÎõÎù\b`ÎåÎéÎÝÎáÎõÎù\b ({N\fLÎùÎ÷ÎáÎñÎåÎáÎõÎý\030\177ÎáÎõÎù\bÎùÎé\200iKÎíÎíÎåÎíÎõ\227K") at /home/gcc/gcc/libjava/jni.cc:796 #17 0x401fa9ed in _Jv_JNI_CallMethodV (env=0x87b28f8, obj=0x884ed48, id=0x87007c0, args=0xbfffd250 "\210ÎéÎ÷ÎáÎõÎù\b`ÎåÎéÎÝÎáÎõÎù\b({N\fLÎùÎ÷ÎáÎñÎåÎáÎõÎý\030 \177ÎáÎõÎù\bÎùÎé\200iKÎíÎíÎåÎíÎõ\227K") at /home/gcc/gcc/libjava/jni.cc:967 #18 0x40fbcfac in callback () from ./lib/libswt-gtk-3138.so #19 0x40faeb65 in fn16_5 () from ./lib/libswt-gtk-3138.so (gdb) p descr $1 = 4294967279 (gdb) p current_p $2 = (word *) 0x93b10e0 (gdb) p type_descr $3 = 0x2d02ca8a (gdb) p GC_gc_no $4 = 1731 (gdb) p *mark_stack_top $5 = {mse_start = 0x93b10e0, mse_descr = 4294967279} (gdb) up #1 0x4041eab8 in GC_finalize () at /home/gcc/gcc/boehm-gc/finalize.c:639 639 GC_MARK_FO(real_ptr, GC_normal_finalize_mark_proc); (gdb) p real_ptr $6 = 0x93b10e0 "\212ÎõÎ÷\002-" (gdb) p *curr_fo $7 = {prolog = {hidden_key = 154865888, next = 0x96d54f8}, fo_fn = 0x40408c14 , fo_client_data = 0x4023b092 "U\211ÎáÎéÎíVS\203ÎáÎíÎá`ÎáÎéÎý\026TÎáÎñÎÝÎáÎñÎå\201ÎõÎñÎáÎáÎá\225=", fo_object_size = 22, fo_mark_proc = 0x4041e03e } (gdb) x/8wx real_ptr -4 0x93b10dc: 0x 0x2d02ca8a
[Bug bootstrap/22330] Building a cross linux->win32 incorrectly sets HAVE_GAS_SHF_MERGE true
--- Additional Comments From ovidr at users dot sourceforge dot net 2005-07-07 21:24 --- I don't know how to do that with the current configure. Build != Host --build=i686-pc-linux-gnu --host=i686-pc-mingw32 --target=i686-pc-mingw32 >From configure.ac: # If build != host, and we aren't building gas in-tree, we identify a # build->target assembler and hope that it will have the same features # as the host->target assembler we'll be using. (which is wrong in this case) And configure.ac is using 'test -x' on environment variables $AS and $AS_FOR_TARGET, which always have their paths stripped, so I can't set it to "/home/gcc/build/crossgcc/bin/i686-pc-mingw32-as" or "i686-pc-mingw32-as" and pass the "test -x" test, even though that is the $AS that will ultimately be used to assemble. Manually changing the "elif test -x "$AS_FOR_TARGET"; then" line in gcc/configure to "-n" makes it use the env variable, and sets HAVE_GAS_SHF_MERGE 0, which is what I want, but I doubt this is the right way to do it. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22330
[Bug other/22330] New: Building a cross linux->win32 incorrectly sets HAVE_GAS_SHF_MERGE true
gcc/gcc/java/class.c if (HAVE_GAS_SHF_MERGE) should be false for windows target. However, it's definition is done by configure for _host_, and it ends up as true in auto-host.h if you cross compile -- Summary: Building a cross linux->win32 incorrectly sets HAVE_GAS_SHF_MERGE true Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: other AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ovidr at users dot sourceforge dot net CC: gcc-bugs at gcc dot gnu dot org GCC host triplet: i686-pc-linux-gnu GCC target triplet: i686-pc-mingw32 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22330
[Bug java/22299] New: Even length strings (not odd) placed in .section .rodata.jutf8.# at -O1 or above.
Compiling with -O1 or above. All even length strings go to ".section .rodata.jutf8.#", odd length strings do not. class small { public static void main(String[] a) { String S2 = "XX"; String S3 = "ODD"; String S4 = ""; String S5 = "ODD55"; String S6 = "XX"; String S8 = ""; String S10 = "XX"; String S12 = ""; String S14 = "XX"; String S16 = ""; String S18 = "XX"; String S20 = ""; String S22 = "XX"; String S24 = ""; String S26 = "XX"; String S28 = ""; String S30 = "XX"; System.out.println("OK"); }} Compile: gcj small.java -S -o small.s -O1 Result: _Utf20: .value 22016 .value 4 .ascii "" .zero 1 .section .rodata.jutf8.8 .align 2 .type _Utf21, @object .size _Utf21, 4 _Utf21: .value 12559 .value 3 .ascii "ODD" .zero 1 .align 2 .type _Utf22, @object .size _Utf22, 4 -- Summary: Even length strings (not odd) placed in .section .rodata.jutf8.# at -O1 or above. Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: java AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ovidr at users dot sourceforge dot net CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu dot org GCC host triplet: linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22299
[Bug libgcj/18266] SIGSEGV in GC_register_finalizer_inner ()
--- Additional Comments From ovidr at users dot sourceforge dot net 2005-06-20 16:25 --- I've tried to create a testcase but can't seem to get a crash or infinite loop lockup. Anyway, I think I understand conceptually what must be done, but in practice I'm still unsure of how to go about it. You don't seem to have a problem with the call to: _Jv_RegisterFinalizer (this, finalize_reference); only _Jv_RegisterFinalizer (referent, finalize_referred_to_object); but since referent is an arbitrary object, what kind of finalizers can it already have? I'm stumped on how to get access to an arbitrary object's finalizers from natReference.cc. Is it just the heavy_lock structure from natObject that needs to be considered somehow? >From comment #10: "My impression is that natReference.cc already keeps a fairly elaborate data structure to which you should be able to add the prior finalization info" This is the part that confuses me. Not all objects are References, so how would a Reference know about some arbitrary Object's previous finalizers or even attempt to maintain a data structure? And once I have the Object's old finalizer (if there is one), I guess I just run it, and register the new one with "GC_REGISTER_FINALIZER_NO_ORDER(x, x, cd, 0, 0);" from natReference's "finalize_referred_to_object" ? Or am I way off track? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18266
[Bug libgcj/18266] SIGSEGV in GC_register_finalizer_inner ()
--- Additional Comments From ovidr at users dot sourceforge dot net 2005-06-08 21:14 --- Since this bug seems a bit lost, I've been trying some things on my own without success. Can someone please explain: If "referent" is just a RawData pointer to some Object, how are its previous finalizers supposed to be found? How to append them along with the new finalizer in the correct order (order matters?) to GC_REGISTER_FINALIZER_NO_ORDER (GC_register_finalizer_inner(obj, fn, cd, ofn, ocd, mp)) which seems to be what is used in natObject.cc? The comments in this bug seem to suggest that there is some similar code somewhere that I could lift and hook into natReference.create, but all the code in natObject and String.intern finalization looks very different to my novice-gcj eyes since they don't seem to be working with some foreign object, nor with finalizers that aren't already locally stored in a struct. Secondly, is there any way to craft a testcase for this to know if it has been fixed? I don't fully understand why (based on comment #6) this would ever cause a crash, and waiting many days for the crash of my apps is a very tedious process. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18266
[Bug libgcj/21068] String(strBytes, "UTF-16LE"); thorws java.io.UnsupportedEncodingException
--- Additional Comments From ovidr at users dot sourceforge dot net 2005-04-17 15:21 --- The work-around which forces inclusion of the needed class: import java.io.UnsupportedEncodingException; import java.nio.charset.Charset; public class GcjStringTest { static { gnu.gcj.convert.Input_UnicodeLittle i_UL = new gnu.gcj.convert.Input_UnicodeLittle(); } public static void main(String args[]) throws UnsupportedEncodingException{ System.out.println("Available Charsets are:\n" +Charset.availableCharsets().toString()); byte[] strBytes = {0x12,0x0A,0x14,0xF}; //Creating String with UTF which is available according to Charsets String mine = new String(strBytes, "UTF-16LE"); //shouldn't recieve Exception System.out.println("["+mine+"]"); } } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21068
[Bug java/20659] New: gcj: Can't reference 'this' before the superclass constructor
gcc version 4.0.0 20041213 javac Bla.java works. gcj -C Bla.java (or -c) Bla.java: In class 'Bla$B': Bla.java: In constructor '(Bla)': Bla.java:18: error: Can't reference 'this' before the superclass constructor has been called. super(doit()); ^ 1 error -- public class Bla { protected int doit() { return 1; } public class A { public A(int i) { } } public class B extends A { public B() { super(doit()); } } } -- Summary: gcj: Can't reference 'this' before the superclass constructor Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: java AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ovidr at users dot sourceforge dot net CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20659
[Bug libgcj/19728] libgcj Gnu.java missing SHA-160
--- Additional Comments From ovidr at users dot sourceforge dot net 2005-02-03 07:12 --- gnu-crypto has 160, 256, 384 and 512 (see gnu/crypto/jce/GnuSecurity.java). Some app I was using required 160 and adding this alias to libgcj fixed it. It would be nice if libgcj had the full gnu-crypto. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19728
[Bug libgcj/19729] libgcj DSASignature.java null pointer exception
--- Additional Comments From ovidr at users dot sourceforge dot net 2005-01-31 21:02 --- Created an attachment (id=8118) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=8118&action=view) The file. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19729
[Bug libgcj/19729] New: libgcj DSASignature.java null pointer exception
appRandom might be null in DSASignature (it is not initialized), yet in the method "public byte[] engineSign()" appRandom is used which causes an NPE. Casey Marshall sent me the attached replacement DSASignature.java file and it works. -- Summary: libgcj DSASignature.java null pointer exception Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: libgcj AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ovidr at users dot sourceforge dot net CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19729
[Bug libgcj/19728] New: libgcj Gnu.java missing SHA-160
Index: Gnu.java === RCS file: /cvsroot/gcc/gcc/libjava/gnu/java/security/provider/Gnu.java,v retrieving revision 1.7 diff -u -r1.7 Gnu.java --- Gnu.java 15 Nov 2004 20:02:04 - 1.7 +++ Gnu.java 31 Jan 2005 20:47:01 - @@ -129,6 +129,7 @@ // Format "Alias", "Actual Name" put("Alg.Alias.MessageDigest.SHA1", "SHA"); put("Alg.Alias.MessageDigest.SHA-1", "SHA"); +put("Alg.Alias.MessageDigest.SHA-160", "SHA"); // Algorithm Parameters put("AlgorithmParameters.DSA", -- Summary: libgcj Gnu.java missing SHA-160 Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: libgcj AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ovidr at users dot sourceforge dot net CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19728
[Bug libgcj/14670] [win32] gcj & high ascii: incorrectly translated / linux: fails to compile
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-12-15 04:59 --- It isn't a compiling problem that I'm trying to illustrate. TestD.java (included above) has a line: String s = "" characters.If these characters were received over a network connection as a byte stream, they would still be converted to a string via the "new String(byte[])" method, which is used in TestD.java. They would then be turned into a String, and displayed, as in the screenshot attached above. gcj doesn't seem to convert the characters properly (not in the same was a sun's java anyway). The testcase and screenshot hopefully communicate what I mean. Anyway, compiling to bytecode is separate issue: gcc version 4.0.0 20041213 (experimental) gcj -C --encoding=UTF-8 TestD.java TestD.java:12: error: malformed UTF-8 character. String s = "░ñâRÇÇNÇåñ░"; gcj -C --encoding=ISO-8859-1 TestD.java TestD.java:1: fatal error: unknown encoding: 'ISO-8859-1' This might mean that your locale's encoding is not supported by your system's iconv(3) implementation. If you aren't trying to use a particular encoding for your input file, try the '--encoding=UTF-8' option compilation terminated. I have mingw msys iconv (GNU libiconv 1.8) on my system. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14670
[Bug libgcj/18996] java.util.zip giving corrupt data or throwing ZipException on correct archives
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-12-14 19:27 --- Works on win32 for me. gcc version 4.0.0 20041213 (experimental) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18996
[Bug target/18459] [4.0 Regression] gcj no longer works on win32
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-12-13 00:11 --- I don't know that it is related to the specific patch, I just know that when I filed the general bug it was the time at which the app that I've been compiling for a year suddenly stopped being recognized as a valid app on win32 until 'stripped' of symbols. The original problem was that all apps did not run (application error), due to the weak symbols patch. The secondary problem is that my app which I've been compiling fine for a year and with a previous 4.0 version of gcc no longer is recognized as a valid win32 .exe unless stripped. I'm not sure what else 'strip' does to the executable besides the removal of symbols, so I'm not sure how to track down this problem yet. Another generic swt app works fine without being stripped, so I'm still at a loss on how to target the problem. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18459
[Bug java/18945] New: gcj ICE with -findirect-dispatch
gcc version 4.0.0 20041130 (experimental) gcj -c -findirect-dispatch Base64InputStream.java Base64InputStream.java: In class 'gnu.crypto.pki.io.Base64InputStream': Base64InputStream.java: In method '()': Base64InputStream.java:59: error: final field 'BASE_64' may not have been initialized Base64InputStream.java: At top level: Base64InputStream.java:52: internal compiler error: Segmentation fault Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html> for instructions. -- Summary: gcj ICE with -findirect-dispatch Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: java AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ovidr at users dot sourceforge dot net CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18945
[Bug java/18945] gcj ICE with -findirect-dispatch
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-12-12 18:34 --- Created an attachment (id=7724) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=7724&action=view) The file. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18945
[Bug target/18459] [4.0 Regression] gcj no longer works on win32
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-12-12 17:40 --- I have rebuilt gcc a few times now, after modifying the patch to use #define TARGET_USE_JCR_SECTION 0 and upgrading to a cvs version of binutils. Using the first patch (http://gcc.gnu.org/ml/gcc-patches/2004-11/msg02192.html) works, and small win32 binaries do run, but when I compile my large app (which uses swt), it still isn't recognized as a win32 app (app.exe is not a valid win32 application) unless I 'strip' it. I don't know how to narrow down the cause of this. (binutils-041211) I then tried out the second patch (dwarf) (http://gcc.gnu.org/ml/gcc-patches/2004-11/msg02120.html) (leaving the first patch still applied), along with Bryce's java stacktrace patch. This worked for me as well on a simple app. On a larger app I still need to strip it, and unfortunately swt uses callbacks, so the app receives a SIGSEGV when closing it: Microsoft Visual C++ Runtime Library --- Runtime Error! This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information. (somewhere after _Java_org_eclipse_swt_internal_Callback_unbind -- gdb isn't helpful since the app is stripped). Patch comments (in the dwarf patch) mention a libgcc_s.dll being required in the future? I am hoping that does not mean it would have to be included with every gcj compiled .exe created for wide distribution since it would make apps less self-contained on windows. Anyone have hints on getting around this callback issue? Bryce's stacktrace patch is incredibly helpful with gcj-java compiled apps on win32.. pointers to even a quick and dirty solution would be appreciated. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18459
[Bug target/18459] [4.0 Regression] gcj no longer works on win32
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-12-10 16:35 --- It was a completely fresh checkout to an empty dir (both times). I build a linux->win32 cross. (building on win32 takes way too long due to fork()). For the dwarf2 patch, I had used the one line patch from: "http://sources.redhat.com/ml/binutils/2004-11/msg00249.html"; on the binutils-2.15.91-20040904-1-src.tar.gz from mingw.org. If I don't need any further patches(?), I will try to use binutils directly from cvs and build it again. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18459
[Bug bootstrap/18458] "make install" -> fixincl missing extension
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-12-10 03:12 --- Ping. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18458
[Bug target/18459] [4.0 Regression] gcj no longer works on win32
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-12-10 03:11 --- I have tried this patch: http://gcc.gnu.org/ml/gcc-patches/2004-11/msg02192.html but a simple gcj --main=test test.java -o test.exe ; test.exe just results in an application error popup (on windows). I have also tried "http://gcc.gnu.org/ml/gcc-patches/2004-11/msg02120.html"; (with the 1 line binutils ld patch to add .jcr), but linking fails: test.java: undefined reference to `__gcj_personality_v0' Removing the stuff from cygming.h and remaking my cross compiler makes things work again. http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/cygming.h.diff?cvsroot=gcc&r1=1.22&r2=1.23 i686-pc-mingw32-gcj (GCC) 4.0.0 20041209 (experimental) public class test { public static void main(String[] a) { System.out.println("x"); } } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18459
[Bug java/18796] [4.0 Regression] gcj imports wrong superclass
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-12-02 20:40 --- Created an attachment (id=7664) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=7664&action=view) testcase The java files. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18796
[Bug java/18796] New: [4.0 Regression] gcj imports wrong superclass
gcj -c -o bla.o sancho/view/transfer/AbstractDetailDialog.java sancho/view/transfer/AbstractDetailDialog.java: In class 'sancho.view.transfer.AbstractDetailDialog': sancho/view/transfer/AbstractDetailDialog.java: In constructor '(int)': sancho/view/transfer/AbstractDetailDialog.java:11: error: Can't find constructor 'org.eclipse.swt.widgets.Dialog(I)' in type 'org.eclipse.swt.widgets.Dialog'. super(i); gcc version 4.0.0 20041130 (experimental) doesn't work. gcc version 3.3.2 20031022 works fine. It is due to the "import org.eclipse.swt.widgets.*" in sancho/view/transfer/downloads/DownloadTableTreeView.java Changing AbstractDetailDialog.java to explicitly import the correct Dialog class fixes it: public abstract class AbstractDetailDialog extends org.eclipse.jface.dialogs.Dialog { (will attach small zip file) -- Summary: [4.0 Regression] gcj imports wrong superclass Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: java AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ovidr at users dot sourceforge dot net CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18796
[Bug java/18741] New: [4.0 Regression] ICE tree check: expected class 'expression', have 'declaration' (var_decl)
public class bla { public static void main(String[] a) { int x = 2; byte [] buffer = new byte [(int)x]; } } gcc version 4.0.0 20041130 (experimental) gcj -c bla.java bla.java: In class 'bla': bla.java: In method 'bla.main(java.lang.String[])': bla.java:5: internal compiler error: tree check: expected class 'expression', have 'declaration' (var_decl) in annotate_with_file_line, at tree.c:2871 Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html> for instructions. -- Summary: [4.0 Regression] ICE tree check: expected class 'expression', have 'declaration' (var_decl) Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: java AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ovidr at users dot sourceforge dot net CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18741
[Bug libgcj/18699] [4.0 Regression] SIGSEGV in GC_local_gcj_malloc
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-11-28 21:24 --- Recompiled libgcj and I still get the above stacktrace. Here is a testcase. import java.util.Observable; import java.util.Observer; class TT extends Observable implements Runnable, Observer { public static void main(String[] args) { TT tt1 = new TT(); TT tt2 = new TT(); tt1.addObserver(tt2); tt2.addObserver(tt1); new Thread(tt1).start(); new Thread(tt2).start(); } public void run() { int c = 0; String s = ""; while (++c < 50) { System.out.println("Running: " + Thread.currentThread()); this.setChanged(); s = ""; for (int i = 0; i < 200; i++) s += String.valueOf(i); this.notifyObservers(s); } } public void update(Observable o, Object obj) { System.out.println(o); } } gcj -g --main=TT TT.java -o TT Collecting from unknown thread. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18699
[Bug libgcj/18699] [4.0 Regression] SIGSEGV in GC_local_gcj_malloc
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-11-28 16:41 --- I reverted that patch and 'make clean' in build's boehm-gc directory but now I get the following. Do I need a complete rebuild? Collecting from unknown thread. Program received signal SIGABRT, Aborted. [Switching to Thread 1112734640 (LWP 10238)] 0x432e8c32 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2 (gdb) bt #0 0x432e8c32 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2 #1 0x4332798f in raise () from /lib/tls/libc.so.6 #2 0x43329302 in abort () from /lib/tls/libc.so.6 #3 0x407f0d95 in GC_abort (msg=0x0) at /datal/gcc/gcc/boehm-gc/misc.c:1072 #4 0x407f75e7 in GC_push_all_stacks () at /datal/gcc/gcc/boehm-gc/pthread_stop_world.c:270 #5 0x407f28d7 in GC_default_push_other_roots () at /datal/gcc/gcc/boehm-gc/os_dep.c:2045 #6 0x407f0589 in GC_push_roots (all=1, cold_gc_frame=0x0) at /datal/gcc/gcc/boehm-gc/mark_rts.c:643 #7 0x407ef9d5 in GC_mark_some (cold_gc_frame=0x4252f6d4 "") at /datal/gcc/gcc/boehm-gc/mark.c:326 #8 0x407e67bb in GC_stopped_mark (stop_func=0x407e6410 ) at /datal/gcc/gcc/boehm-gc/alloc.c:518 #9 0x407e716a in GC_try_to_collect_inner (stop_func=0x407e6410 ) at /datal/gcc/gcc/boehm-gc/alloc.c:365 #10 0x407e7b16 in GC_collect_or_expand (needed_blocks=1, ignore_off_page=0) at /datal/gcc/gcc/boehm-gc/alloc.c:1020 #11 0x407e7c8b in GC_allocobj (sz=2, kind=4) at /datal/gcc/gcc/boehm-gc/alloc.c:1071 #12 0x407ec55a in GC_generic_malloc_inner (lb=8, k=4) at /datal/gcc/gcc/boehm-gc/malloc.c:136 #13 0x407eb6a4 in GC_gcj_malloc (lb=8, ptr_to_struct_containing_descr=0x40b36948) at /datal/gcc/gcc/boehm-gc/gcj_mlc.c:157 #14 0x405ea18b in _Jv_AllocObjectNoFinalizer (klass=0x40b36880) at java-gc.h:48 #15 0x405ea1f5 in _Jv_AllocObject (klass=0x40b36880) at /datal/gcc/gcc/libjava/prims.cc:435 #16 0x4061286d in java::lang::Object::clone (this=0x8a399c0) at /datal/gcc/gcc/libjava/java/lang/natObject.cc:101 #17 0x4067c2e7 in java.util.HashSet.clone() (this=0x8a399c0) at /datal/gcc/gcc/libjava/java/util/HashSet.java:173 #18 0x4068463b in java.util.Observable.notifyObservers(java.lang.Object) (this=0x8ac7d40, obj=0x8a399d8) at /datal/gcc/gcc/libjava/java/util/Observable.java:164 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18699
[Bug libgcj/18699] [4.0 Regression] SIGSEGV in GC_local_gcj_malloc
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-11-28 04:20 --- And this.. Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 1113430960 (LWP 4763)] 0x405e8f93 in really_start (x=0x8771a40) at /datal/gcc/gcc/libjava/posix-threads.cc:396 396 if (! (info->data->flags & FLAG_DAEMON)) Current language: auto; currently c++ (gdb) bt #0 0x405e8f93 in really_start (x=0x8771a40) at /datal/gcc/gcc/libjava/posix-threads.cc:396 #1 0x435f979c in start_thread () from /lib/tls/libpthread.so.0 #2 0x433daf2a in clone () from /lib/tls/libc.so.6 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18699
[Bug java/18699] New: [4.0 Regression] SIGSEGV in GC_local_gcj_malloc
I have upgraded to gcc version 4.0.0 20041127 (experimental) and my app now receives this: Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 1103858608 (LWP 4735)] GC_local_gcj_malloc (bytes=20, ptr_to_struct_containing_descr=0x86d1848) at /datal/gcc/gcc/boehm-gc/pthread_support.c:364 364 ptr_t my_entry = *my_fl; (gdb) bt #0 GC_local_gcj_malloc (bytes=20, ptr_to_struct_containing_descr=0x86d1848) at /datal/gcc/gcc/boehm-gc/pthread_support.c:364 #1 0x405ea18b in _Jv_AllocObjectNoFinalizer (klass=0x86d18a0) at java-gc.h:46 (rest is in my code) ... (gdb) info local index = 3 my_fl = (ptr_t *) 0x234 my_entry = Variable "my_entry" is not available. There were recent changes to the THREAD_LOCAL_ALLOC define I believe. Whether related or not I'm not sure. /i686-pc-linux-gnu/libjava/include/java-gc.h (is a symlink to /libjava/include/boehm-gc.h) #ifdef THREAD_LOCAL_ALLOC return GC_local_gcj_malloc (size, klass->vtable); // this is line 46 #else return GC_gcj_malloc (size, klass->vtable); #endif -- Summary: [4.0 Regression] SIGSEGV in GC_local_gcj_malloc Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: java AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ovidr at users dot sourceforge dot net CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18699
[Bug target/18459] [4.0 Regression] gcj no longer works on win32
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-11-14 20:25 --- I use binutils-2.15.91-20040904-1 from mingw.org (latest I think). I thought by removing the change to cygming.h this weak sym problem would be gone, but I guess there are other changes somewhere that affect this. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18459
[Bug target/18459] [4.0 Regression] gcj no longer works on win32
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-11-14 19:34 --- Small followup: Even though the hello world app works, a much larger app does not work (error: app.exe is not a valid Win32 application.) unless I 'strip' it. I'm not sure why that would be... (If that Dwarf2 EH patch makes stack traces work on win32, that should be a really great improvement) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18459
[Bug java/18459] linux -> win cross compiler : gcj produces corrupt executables
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-11-13 19:22 --- I don't think this is a duplicate - it has nothing to do with LANG settings. The stacktrace may look similar, and end on _Jv_FindClass, but it does not go through PrintStream/UnicodeToBytes. I reverted the following patch to cygming.h from Nov 6th: http://gcc.gnu.org/ml/gcc-cvs/2004-11/msg00265.html And everything works again. -- What|Removed |Added Status|RESOLVED|UNCONFIRMED Resolution|DUPLICATE | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18459
[Bug bootstrap/18458] "make install" -> fixincl missing extension
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-11-13 19:18 --- The attached patch works - install succeeds. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18458
[Bug java/18459] New: linux -> win cross compiler : gcj produces corrupt executables
gcc version 4.0.0 20041113 (experimental) I produce a cross compiler as I normally do. Host is linux, target is i686-pc-mingw32, and create a simple test class and compile: public class test { public static void main(String[] sa) { System.out.println("H. World"); } } i686-pc-mingw32-gcj --main=test test.java Copy the a.exe to a win machine, run it, and it has an application error. All .exe's that are created with gcj fail. If I create a "hello world" test.c and compile it with i686-pc-mingw32-gcc, and copy it to the win box it works fine. The i686-pc-mingw32-gcj I built a month ago works without problem: gcc version 4.0.0 20041014 (experimental) Here is what I see in gdb: (gdb) r Starting program: /cygdrive/e/dev/test/a.exe Program received signal SIGSEGV, Segmentation fault. 0x0043319d in _Jv_FindClass () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 67 /datal/gcc/gcc/gcc/config/i386/cygwin.asm: No such file or directory. in /datal/gcc/gcc/gcc/config/i386/cygwin.asm Current language: auto; currently asm (gdb) bt #0 0x0043319d in _Jv_FindClass () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #1 0x00401b27 in _Jv_FindClassFromSignature () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #2 0x004333cd in _Jv_PrepareCompiledClass () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #3 0x004095ad in java::lang::Class::initializeClass () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #4 0x004096ed in java::lang::Class::initializeClass () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #5 0x004096ed in java::lang::Class::initializeClass () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #6 0x0040217c in _Jv_AllocObjectNoFinalizer () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #7 0x00470e32 in java::util::Hashtable::entrySet () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #8 0x004711ef in java::util::Hashtable::putAllInternal () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #9 0x00470aa4 in java::util::Hashtable::clone () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #10 0x00403cd4 in java::lang::System::__U3c_clinit__U3e_ () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #11 0x0040954f in java::lang::Class::initializeClass () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #12 0x00403702 in java::lang::System::getSecurityManager () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #13 0x0040bba9 in java::lang::ClassLoader::getSystemClassLoader () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #14 0x00433159 in _Jv_FindClass () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #15 0x00401b27 in _Jv_FindClassFromSignature () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #16 0x004333cd in _Jv_PrepareCompiledClass () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #17 0x004095ad in java::lang::Class::initializeClass () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #18 0x0040217c in _Jv_AllocObjectNoFinalizer () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #19 0x004021a7 in _Jv_AllocObject () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #20 0x00432b63 in _Jv_NewClass () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #21 0x004336d4 in _Jv_NewArrayClass () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #22 0x00402432 in _Jv_NewObjectArray () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #23 0x0046f8b2 in java::util::Hashtable::Hashtable () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #24 0x0046fae2 in java::util::Hashtable::Hashtable () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #25 0x004922dd in java::security::Permissions::finit$ () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #26 0x0049230a in java::security::Permissions::Permissions () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #27 0x0043d283 in java::lang::VMClassLoader::__U3c_clinit__U3e_ () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #28 0x0040954f in java::lang::Class::initializeClass () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #29 0x0043cef5 in java::lang::VMClassLoader::getSystemClassLoader () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #30 0x0040c5d4 in java::lang::ClassLoader::__U3c_clinit__U3e_ () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #31 0x0040954f in java::lang::Class::initializeClass () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #32 0x00402ece in _Jv_CreateJavaVM () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #33 0x004030c9 in _Jv_RunMain () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #34 0x0040329b in JvRunMain () at /datal/gcc/gcc/gcc/config/i386/cygwin.asm:67 #35 0x004012ce in main (argc=1, argv=0x3d3e48) -- Summary: linux -> win cross compiler : gcj produces corrupt executables Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: java AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ovidr at users dot sourceforge dot net CC: gcc-bugs
[Bug bootstrap/18458] New: "make install" -> fixincl missing extension
fixincl is missing the ".exe" when building a native win32 compiler from a cross compiler. "make install" /bin/sh /datal/gcc/gcc/mkinstalldirs /datal/gcc/build/wingcc /datal/gcc/build/wingcc make[1]: Entering directory `/home/gcc/build/wingcc_build/fastjar' make[2]: Entering directory `/home/gcc/build/wingcc_build/fastjar' test -z "/datal/gcc/build/wingcc/bin" || mkdir -p -- . "/datal/gcc/build/wingcc/bin" /usr/bin/install -c 'fastjar.exe' '/datal/gcc/build/wingcc/bin/fastjar.exe' /usr/bin/install -c 'grepjar.exe' '/datal/gcc/build/wingcc/bin/grepjar.exe' test -z "/datal/gcc/build/wingcc/info" || mkdir -p -- . "/datal/gcc/build/wingcc/info" /usr/bin/install -c -m 644 './fastjar.info' '/datal/gcc/build/wingcc/info/fastjar.info' install-info --info-dir='/datal/gcc/build/wingcc/info' '/datal/gcc/build/wingcc/info/fastjar.info' test -z "/datal/gcc/build/wingcc/man/man1" || mkdir -p -- . "/datal/gcc/build/wingcc/man/man1" /usr/bin/install -c -m 644 'fastjar.1' '/datal/gcc/build/wingcc/man/man1/fastjar.1' /usr/bin/install -c -m 644 'grepjar.1' '/datal/gcc/build/wingcc/man/man1/grepjar.1' make[2]: Leaving directory `/home/gcc/build/wingcc_build/fastjar' make[1]: Leaving directory `/home/gcc/build/wingcc_build/fastjar' make[1]: Entering directory `/home/gcc/build/wingcc_build/fixincludes' rm -rf /datal/gcc/build/wingcc/libexec/gcc/i686-pc-mingw32/4.0.0/install-tools /bin/sh /datal/gcc/gcc/fixincludes/../mkinstalldirs /datal/gcc/build/wingcc/libexec/gcc/i686-pc-mingw32/4.0.0/install-tools mkdir -p -- /datal/gcc/build/wingcc/libexec/gcc/i686-pc-mingw32/4.0.0/install-tools /bin/sh /datal/gcc/gcc/fixincludes/../mkinstalldirs /datal/gcc/build/wingcc/lib/gcc/i686-pc-mingw32/4.0.0/install-tools/include /usr/bin/install -c -m 644 /datal/gcc/gcc/fixincludes/README-fixinc \ /datal/gcc/build/wingcc/lib/gcc/i686-pc-mingw32/4.0.0/install-tools/include/README /usr/bin/install -c fixinc.sh /datal/gcc/build/wingcc/libexec/gcc/i686-pc-mingw32/4.0.0/install-tools/fixinc.sh /usr/bin/install -c fixincl \ /datal/gcc/build/wingcc/libexec/gcc/i686-pc-mingw32/4.0.0/install-tools/fixincl /usr/bin/install: cannot stat `fixincl': No such file or directory make[1]: *** [install] Error 1 make[1]: Leaving directory `/home/gcc/build/wingcc_build/fixincludes' make: *** [install-fixincludes] Error 2 mv: can't stat source /datal/gcc/build/wingcc/lib/lib* mv: can't stat source /datal/gcc/build/wingcc/include/*.h mv: can't stat source /datal/gcc/build/wingcc/include/gcj mv: can't stat source /datal/gcc/build/wingcc/include/gnu mv: can't stat source /datal/gcc/build/wingcc/include/java mv: can't stat source /datal/gcc/build/wingcc/include/javax All done ! "fixincl.exe" exists, "fixincl" does not. -- Summary: "make install" -> fixincl missing extension Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: bootstrap AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ovidr at users dot sourceforge dot net CC: gcc-bugs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18458
[Bug java/18433] New: gcj compiling resources from a file list doesn't work (ICE)
gcc version 4.0.0 20041014 (experimental) gcj can compile resources in a jar file: > gcj -c file.jar But, it can not compile resources from list of files: filelist: dir/somefile.jpg dir/someother.jpg > gcj --resource -c @filelist gcj: --resource requires -o Adding the unneeded -o: > gcj --resource -c -o f @filelist gcj: @filelist: No such file or directory Assertion failed: TREE_CHAIN (current_file_list) == NULL, file /datal/gcc/gcc/gcc/java/jcf-parse.c, line 1087 This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information. filelist:0: internal compiler error: Aborted Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html> for instructions. -- Summary: gcj compiling resources from a file list doesn't work (ICE) Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: java AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ovidr at users dot sourceforge dot net CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18433
[Bug libgcj/18266] SIGSEGV in GC_register_finalizer_inner ()
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-11-08 20:27 --- Unforunately many variables seem not to be available: GNU gdb 6.1 (gdb) p descr Variable "descr" is not available. (gdb) p current_p $1 = (word *) 0x9acf618 (gdb) p type_descr No symbol "type_descr" in current context. (gdb) p GC_gc_no $2 = 768 (gdb) p *mark_stack_top $3 = {mse_start = 0x9acf618, mse_descr = 4294967279} (gdb) up 1 #1 0x40523b4b in GC_finalize () at /datal/gcc/gcc/boehm-gc/finalize.c:639 639 GC_MARK_FO(real_ptr, GC_normal_finalize_mark_proc); (gdb) p real_ptr Variable "real_ptr" is not available. (gdb) p *curr_fo Variable "curr_fo" is not available. (gdb) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18266
[Bug libgcj/18266] SIGSEGV in GC_register_finalizer_inner ()
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-11-08 03:00 --- Recompiled with -g (and waited a few days..), but I'm not sure if this is the same problem or not: Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 1106963376 (LWP 23098)] 0x4052753c in GC_mark_from (mark_stack_top=0x8c5f000, mark_stack=0x8c5f000, mark_stack_limit=0x8c7f000) at /datal/gcc/gcc/boehm-gc/mark.c:724 724 descr = *(word *)(type_descr (gdb) bt #0 0x4052753c in GC_mark_from (mark_stack_top=0x8c5f000, mark_stack=0x8c5f000, mark_stack_limit=0x8c7f000) at /datal/gcc/gcc/boehm-gc/mark.c:724 #1 0x40523b4b in GC_finalize () at /datal/gcc/gcc/boehm-gc/finalize.c:639 #2 0x4051fa60 in GC_finish_collection () at /datal/gcc/gcc/boehm- gc/alloc.c:659 #3 0x405200eb in GC_try_to_collect_inner (stop_func=Variable "stop_func" is not available. ) at /datal/gcc/gcc/boehm-gc/alloc.c:376 #4 0x4052087e in GC_collect_or_expand (needed_blocks=Variable "needed_blocks" is not available. ) at /datal/gcc/gcc/boehm-gc/alloc.c:1020 #5 0x40520adb in GC_allocobj (sz=12, kind=0) at /datal/gcc/gcc/boehm- gc/alloc.c:1071 #6 0x405253aa in GC_generic_malloc_inner (lb=48, k=0) at /datal/gcc/gcc/boehm- gc/malloc.c:136 #7 0x4052621c in GC_generic_malloc_many (lb=48, k=0, result=0x8722cf8) at /datal/gcc/gcc/boehm-gc/mallocx.c:512 #8 0x4053014e in GC_local_malloc_atomic (bytes=48) at /datal/gcc/gcc/boehm- gc/pthread_support.c:334 #9 0x403780fc in _Jv_AllocString (len=14) at java-gc.h:57 #10 0x403b0b75 in java::lang::String::toLowerCase (this=0x859fcc0, locale=Variable "locale" is not available. ) at cni.h:41 #11 0x403d4943 in java.lang.String.toLowerCase() (this=0xffef) at /datal/gcc/gcc/libjava/java/lang/String.java:1031 #12 0x4050de5f in gnu.gcj.convert.IOConverter.canonicalize(java.lang.String) (name=Variable "name" is not available. ) at /datal/gcc/gcc/libjava/gnu/gcj/convert/IOConverter.java:77 #13 0x4050c36d in gnu.gcj.convert.BytesToUnicode.getDecoder(java.lang.String) (encoding=0x859fcc0) at /datal/gcc/gcc/libjava/gnu/gcj/convert/BytesToUnicode.java:78 #14 0x403af2c0 in java::lang::String::init (this=0x97c42d0, bytes=0x88ea000, offset=Variable "offset" is not available. ) at /datal/gcc/gcc/libjava/java/lang/natString.cc:488 #15 0x403d429e in java.lang.String.String(byte[], int, int) (this=Variable "this" is not available. ) at /datal/gcc/gcc/libjava/java/lang/String.java:345 ... I'll leave it open in a screen session. Any gdb commands I should type? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18266
[Bug libgcj/18266] SIGSEGV in GC_register_finalizer_inner ()
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-11-01 22:08 --- The app uses many java.util.WeakHashMap s (usually with null values, just storing objects in the keys ie: map.put(object, null), if that matters). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18266
[Bug libgcj/18266] SIGSEGV in GC_register_finalizer_inner ()
-- What|Removed |Added CC||Hans dot Boehm at hp dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18266
[Bug libgcj/18266] New: SIGSEGV in GC_register_finalizer_inner ()
1081003116 esp0x42878818 0x42878818 ebp0x42878850 0x42878850 esi0x8dc2270148644464 edi0x403b27c0 1077618624 eip0x40523321 0x40523321 eflags 0x10202 66050 cs 0x23 35 ss 0x2b 43 ds 0x2b 43 es 0x2b 43 fs 0x0 0 gs 0x33 51 -- Summary: SIGSEGV in GC_register_finalizer_inner () Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: libgcj AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ovidr at users dot sourceforge dot net CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18266
[Bug java/17963] [4.0 Regression] Compiling a .jar files fails when files within .jar are in a different order
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-10-28 16:31 --- Created an attachment (id=7424) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=7424&action=view) gnu class files -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17963
[Bug java/17963] [4.0 Regression] Compiling a .jar files fails when files within .jar are in a different order
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-10-28 16:30 --- Hi, sorry, I didn't notice that I had a gnu/crypto/pki/provider/ subdirectory and I guess gcj picked up the classes from there. I will include gnu.zip. Unzip it to a temp directory preserving paths, and gcj -c try-noerror.jar and gcj -c try-error.jar from the temp dir. /tmp/ /tmp/try-noerror.jar /tmp/try-error.jar /tmp/gnu/crypto/pki/provider/* -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17963
[Bug libgcj/18187] New: ava.util.WeakHashMap$WeakEntrySet.next() throws NoSuchElementException during GC
During garbage collection, the WeakHashMap will throw a NoSuchElementException when performing the methods: .keySet().toArray() .clear(); and maybe more. Sun's java does not. Here is an example: gcc version 4.0.0 20041014 (experimental) gcj -main=WH WH.java import java.util.*; public class WH { public static void main(String[] s) { Thread t = new Thread() { public void run() { while (true) { System.gc(); try { Thread.sleep(1000); } catch (Exception e) { } } } }; WeakHashMap w = new WeakHashMap(); for (int i = 0; i < 1; i++) w.put(new WH(), null); t.setDaemon(true); t.start(); try { w.clear(); } catch (NoSuchElementException n) { System.out.println("From .clear(): "); n.printStackTrace(); } for (int i = 0; i < 1; i++) w.put(new WH(), null); try { for (int i = 0; i < 1000; i++) System.out.print("["+w.keySet().toArray().length+"]"); } catch (NoSuchElementException n) { System.out.println("iFrom .toArray():"); n.printStackTrace(); } } } -- Summary: ava.util.WeakHashMap$WeakEntrySet.next() throws NoSuchElementException during GC Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: libgcj AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ovidr at users dot sourceforge dot net CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18187
[Bug java/17963] [4.0 Regression] Compiling a .jar files fails when files within .jar are in a different order
--- Additional Comments From ovidr at users dot sourceforge dot net 2004-10-12 23:52 --- Created an attachment (id=7332) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=7332&action=view) The two jar files -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17963
[Bug java/17963] New: [4.0 Regression] Compiling a .jar files fails when files within .jar are in a different order
gcc version 4.0.0 20041009 (experimental) try-noerror.jar and tryerror.jar have the *same files* contained within, just in a different order. gcj -c try-noerror.jar (no error) gcj -c try-error.jar gnu/crypto/pki/provider/EncodedKeyFactory.java:0: fatal error: reading class gnu.crypto.pki.provider.EncodedKeyFactory for the second time from gnu/crypto/pki/provider/EncodedKeyFactory.class compilation terminated. gcc version 4.0.0 20040922 (experimental) does not have this problem. I will include the files. -- Summary: [4.0 Regression] Compiling a .jar files fails when files within .jar are in a different order Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: java AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ovidr at users dot sourceforge dot net CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17963