Subject: Re: Catching exceptions within a shared library
To: None <crvich@us.ibm.com>
From: Chris G. Demetriou <cgd@netbsd.org>
List: port-i386
Date: 12/29/1999 18:35:37
crvich@us.ibm.com writes:
> Our code is ported to eight other OS's, and I have never seen this
> behavior before. Has anyone encountered this? Here's a small test case
> that shows the problem (using egcs 1.1.2 on NetBSD 1.3.3):
I would suspect that this is some weirdness with the combination of
the compiler used to build the system and the compiler you're using.
I know there have been issues with egcs c++ and exceptions over time
(e.g. ABIs changing, etc.), but I don't know what specifically they
are.
I do note that on NetBSD 1.4.1-ish (a.out, with the as-shipped
compiler: egcs-2.91.60 19981201 (egcs-1.1.1 release)), it produces
what i'd expect is the correct result from your e-mail:
EXCEPTION: 42
On the other hand, on NetBSD-current as of early November (the i386
19991113 snapshot (1.4N), which is ELF and uses the compiler:
egcs-2.91.66 19990314 (egcs-1.1.2 release)), I get the result:
Abort trap
I'm by no means a c++ person, i just thought i'd do some more
investigation. Sounds like there are some Issues, perhaps with EGCS
1.1.2...
Have you tried other versions of the compiler?
cgd
--
Chris Demetriou - cgd@netbsd.org - http://www.netbsd.org/People/Pages/cgd.html
Disclaimer: Not speaking for NetBSD, just expressing my own opinion.