This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [rfc breakpoint] Catch exceptions
- From: Daniel Jacobowitz <drow at mvista dot com>
- To: Jim Ingham <jingham at apple dot com>
- Cc: gdb-patches at sources dot redhat dot com
- Date: Tue, 25 Mar 2003 19:03:54 -0500
- Subject: Re: [rfc breakpoint] Catch exceptions
- References: <1048606641.15061.ezmlm@sources.redhat.com> <B4D17DA2-5F1C-11D7-BFD4-00039379E320@apple.com>
On Tue, Mar 25, 2003 at 03:51:32PM -0800, Jim Ingham wrote:
> One thing we had to worry about at least on Mac OS X is that we don't
> use a shared libstdc++, rather every shlib that uses C++ get its own
> copy of all the libsupc++ code. So there are actually many copies of
> __cxa__begin_catch hanging around. To do this properly, you have to
> search exhaustively for these symbols, not just take the first hit.
> Moreover, you have to redo it on every shared library load, or you will
> miss some. This still might bite you on other systems, for instance if
> out of paranoia somebody had linked their shlib or executable
> statically to libstdc++.a (so they wouldn't get bit by changing ABI
> issues or whatever).
>
> BTW. The more general problem of a symbol resolving to multiple
> instances - for instance setting file:line breakpoints in inlined
> functions or template method defn's - is something we need to address.
> It really ticks off our C++ friends. I thought I was going to have
> time to think about this in the next month or two, but I got
> sidetracked on other issues. But I will need to get back to it after
> our WWDC (in June).
Yes. Rather than focusing on it with a special hack here, I'd rather
eventually address it properly. Thanks for pointing this out.
> I thought from some comments in other notes that this was something you
> were thinking about as well, Daniel. Is that true?
I'm interested in the problem, but like everyone I have a dreadful
shortage of time :(
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer