java@gcc.gnu.org
[Top] [All Lists]

Re: Segfault in org::w3c::dom::Node::class

Subject: Re: Segfault in org::w3c::dom::Node::class
From: David Daney
Date: Thu, 06 Oct 2005 15:14:22 -0700
Khiraly wrote:
2005-10-06, cs keltezéssel 08:44-kor David Daney ezt írta:

SIGSEGV is usually a "normal" occurrence in the gcj runtime. On most platforms it is converted into a NullPointerException and then handled by the exception handling framework.

You should try to determine if this is just a normal instance of NullPointerException or if something went wrong (i.e. is the faulting address close to 0 which is a normal NPE). You program is aborting which could indicate a problem encountered by the exception processing code in libgcj. This type of problem is exceptionally fun to debug (no pun intended).

David Daney.



Hi!

I have written a small test program to demonstrate the problem.
Now Im quite sure that this is a bug with gcj and not with my program.

I can compile with javac, but segfault with gcj.

khiraly@elite:~/saxsux$ javac SaxSux.java
khiraly@elite:~/saxsux$ java SaxSux config.xml
Teszt
true
khiraly@elite:~/saxsux$ gcj-4.0 --main=SaxSux SaxSux.java
khiraly@elite:~/saxsux$ ./a.out config.xml
Aborted
khiraly@elite:~/saxsux$


Here is the two file to demonstrate the problem:
http://khiraly.4242.hu/tmp/saxsux/SaxSux.java
http://khiraly.4242.hu/tmp/saxsux/config.xml

Can somebody verify this problem please?


ON FC3:

#0  0xb7fe8402 in __kernel_vsyscall ()
#1  0x00b887d5 in raise () from /lib/tls/libc.so.6
#2  0x00b8a149 in abort () from /lib/tls/libc.so.6
#3  0xb74f81c7 in _Jv_Throw (value=0x17b7b0)
    at ../../../gcccvsmain/gcc/libjava/exception.cc:111
#4 0xb74ec0ea in catch_segv (_dummy=Could not find the frame base for "catch_segv".
) at ../../../gcccvsmain/gcc/libjava/prims.cc:152
#5  <signal handler called>
#6  0x0804a508 in org::w3c::dom::Node::class$ ()
#7  0x08049340 in SaxSux.getStringElement(java.lang.String) ()
#8  0x0804906e in SaxSux.main(java.lang.String[]) ()
#9  0xb75189d3 in gnu::java::lang::MainThread::call_main (this=0x62f18)
    at ../../../gcccvsmain/gcc/libjava/gnu/java/lang/natMainThread.cc:47
#10 0xb7559a07 in gnu.java.lang.MainThread.run() (this=0x62f18) at MainThread.java:105
#11 0xb75277eb in _Jv_ThreadRun (thread=0x62f18)
    at ../../../gcccvsmain/gcc/libjava/java/lang/natThread.cc:299
#12 0xb74ed03d in _Jv_RunMain (vm_args=0x0, klass=0x804a2c0, name=0x0, argc=2, argv=0xbf8e5bd4, is_jar=false) at ../../../gcccvsmain/gcc/libjava/prims.cc:1386 #13 0xb74ed1a2 in _Jv_RunMain (klass=0x804a2c0, name=0x0, argc=2, argv=0xbf8e5bd4,
    is_jar=false) at ../../../gcccvsmain/gcc/libjava/prims.cc:1397
#14 0xb74ed1e7 in JvRunMain (klass=0x804a2c0, argc=2, argv=0xbf8e5bd4)
    at ../../../gcccvsmain/gcc/libjava/prims.cc:1403
#15 0x08048fc4 in main ()

Verified in gcc HEAD.

Please file a bug report.

<Prev in Thread] Current Thread [Next in Thread>