This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug other/38732] [4.4 Regression] Openoffice.org segfaults with runtime libs built from GCC trunk
- From: "jakub at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 6 Jan 2009 13:35:37 -0000
- Subject: [Bug other/38732] [4.4 Regression] Openoffice.org segfaults with runtime libs built from GCC trunk
- References: <bug-38732-11764@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #13 from jakub at gcc dot gnu dot org 2009-01-06 13:35 -------
So, referenceCount needs to be in any case nuked from struct __cxa_exception.
IMHO, either we define (probably in a different namespace)
struct __cxa_exception_with_refcount
{
_Atomic_word referenceCount;
struct __cxa_exception exc;
};
and corresponding __get_exception_header_with_refcount_from_{obj,ue}
and use this one where needed (at least in eh_alloc.c, eh_ptr.cc and
eh_throw.cc), or we just allocate space for one _Atomic_word before the struct
(i.e. allocate extra MAX (__alignof__ (__cxa_exception), sizeof (_Atomic_word))
before it) and use a macro (and or inline) to get address of referenceCount
_Atomic_word before the __cxa_exception struct.
--
jakub at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |bkoz at gcc dot gnu dot org,
| |paolo at gcc dot gnu dot org
Priority|P3 |P1
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38732