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. <builddir>/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