Stack overflow is one class of exception that can be uncatchable, since
the stack is in too poor a state to be unwound by the exception handling
system. Maybe you have a re-entrant or recursive routine? Or a method
overriden to accept different argument types but one of those types has
a copy constructor for one of the other types? That can cause such
methods to wind up calling themselves. If it is stack overflow, my guess
is it's in a destructor somewhere. Or maybe the thread needs a larger
stack allocation. A first step would be to just print function
entrypoints to your debugger, and see if they pile up too much.
Ray
D'artagnan wrote:
I'm using Pthreads in a C++ program that uses exceptions. When one
thread is cancelled (cancellation state is deferred) by the main
thread, it throws some mysterious exception which cannot even be caught
by "catch(...)". The program aborts with the following error message:
FATAL: exception not rethrown
Abort
Anybody have ideas how to avoid this problem? Specifically, how to
catch the cancellation exception, or how to ignore it? Thanks a lot.