This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: c++/9588: memory fault when user throws exception from terminate()
- From: Alan Modra <amodra at bigpond dot net dot au>
- To: fwang at ca dot ibm dot com
- Cc: nathan at gcc dot gnu dot org, gcc-bugs at gcc dot gnu dot org, gcc-prs at gcc dot gnu dot org, nobody at gcc dot gnu dot org, gcc-gnats at gcc dot gnu dot org
- Date: Thu, 6 Feb 2003 15:17:30 +1030
- Subject: Re: c++/9588: memory fault when user throws exception from terminate()
- References: <OF94EEA40F.2E32B306-ON85256CC4.0076E703@torolab.ibm.com>
I would guess that you have a library, most likely libc, built with
a buggy toolchain that didn't terminate .eh_frame with a zero. You
can use a recent (later than 2002-11-04) version of readelf to
display the terminator with something like
powerpc64-linux-readelf --debug-dump=frames \
/usr/local/powerpc64-linux/lib/libc.so.6 | grep ZERO
which should result in
xxxxxxxx ZERO terminator
As far as I know, Jakub Jelinek fixed the toolchain problem 2002-04-22.
--
Alan Modra
IBM OzLabs - Linux Technology Centre