This is the mail archive of the gdb-prs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/9599] catch catch and catch throw restore control of theinferior inside libstd exception handler and throw code.


http://sourceware.org/bugzilla/show_bug.cgi?id=9599

Tom Tromey <tromey at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |tromey at redhat dot com

--- Comment #1 from Tom Tromey <tromey at redhat dot com> 2013-02-20 21:56:52 UTC ---
I don't think there is a very good way to do this directly,
but it could be faked by installing a frame filter that
notices that the newest frame is __cxa_begin_catch and that
the PC is where "catch catch" placed it.
Then, the filter can simply elide the first frame.

However, this would yield somewhat strange results.
First, it isn't clear whether a frame filter can actually
elide the first frame.
Second, this would yield a situation where "bt" would report
the selected frame as the user's code, but where the
actual selected frame would be in libstdc++; so things
like "info locals" would fail.
I think that fixing this requires the next step of frame filters, namely
integration with frame selection.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]