On 4 Jan 2013, at 12:49, Stefan Farfeleder wrote: > On Fri, Jan 04, 2013 at 12:38:44PM +0000, David Chisnall wrote: >> Is this on 9.1? In -CURRENT and 9.1, libstdc++ is a filter library, and libsupc++ or or libcxxrt are the filtee. This means that the __cxa_throw symbol appears to be in libstdc++ (for symbol versioning purposes), but is actually in the ABI library. If you tell gdb to put the breakpoint on __cxa_throw itself, then it should tell you that there are multiple definitions and ask which one you want (if it doesn't, it's a gdb bug). >> > > This is on 10.0-CURRENT r244738 amd64. The commands 'b __cxa_throw' and > 'catch throw' seemd to be identical, and gdb does not ask about multiple > versions of __cxa_throw. > > To be honest, I don't care exactly whose bug it is, I want it to work again :D As a work-around, you can put the breakpoint on _Unwind_RaiseException instead. This will work for any language, not just C++ (e.g. it will notice Objective-C or gcj-compiled Java exceptions). DavidReceived on Fri Jan 04 2013 - 11:54:12 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:33 UTC