Gdb support for exceptions (Re: using backtrace() in exception throwing?)
Stephan Bergmann
sbergman at redhat.com
Tue Feb 26 00:00:00 PST 2013
On 02/22/2013 07:14 PM, Tom Tromey wrote:
> I'm curious what types of exceptions are actually thrown in LibreOffice.
> Does it throw -- scalars? Objects? Just pointers ("Java style")?
LibreOffice's UNO component system has a large exception hierarchy,
which is modeled as a hierarchy of classes in C++. So what is thrown is
typically (copies of) stack-allocated class instances, of specific
sub-classes of com::sun::star::uno::Exception.
> If we had the convenience variable mentioned above, and if LibreOffice
> has a relatively simple "exception identity" measure (e.g., if you only
> throw pointers, you can just compare them with ==), then it could
> perhaps be done by: break at the losing catch, make a conditional "catch
> throw", then re-run.
Overall execution in LibreOffice is likely dynamic enough that the
relevant exception class instance has different addresses in different runs.
Stephan
More information about the LibreOffice
mailing list