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

Reply via email to