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 _______________________________________________ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice