This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: -fno-rtti BUG Solaris/Linux
- To: egcs-bugs at egcs dot cygnus dot com, james at sublime dot com dot au
- Subject: Re: -fno-rtti BUG Solaris/Linux
- From: mrs at wrs dot com (Mike Stump)
- Date: Tue, 16 Feb 1999 14:46:33 -0800
- Cc: amacleod at cygnus dot com
> Date: Tue, 16 Feb 1999 15:27:12 +1100
> To: egcs-bugs@egcs.cygnus.com
> From: James Bourne <james@sublime.com.au>
> Compile the very simple program below as follows: "g++ -fno-rtti crash.cxx".
> Run it and you will get a segmentation violation. Looking at the stack back
> trace:
> #0 0x14e50 in __is_pointer (p=0x15cd8)
> #1 0x12954 in __cp_pop_exception (p=0x27670)
> #2 0x118d8 in main ()
> "When -frtti is used, rtti is used to do exception object type checking,
> when it isn't used, the encoded name for the type of the object being
> thrown is used instead."
This looks like it was broken by:
1998-10-23 Andrew MacLeod <amacleod@cygnus.com>
* exception.cc (__cp_pop_exception): Free the original exception
value, not the potentially coerced one.
I haven't been tracking all the recent EH changes so others will have
to say if it is a design limitation. If it is, the doc should be
updated. It it isn't, the code should be fixed to allow -fno-rtti
-fexceptions.