Barry Andrews wrote: > I have a 3rd party library ( which I'll call X ) which I believe was > compiled with exception handling disabled. Then I have my C++ library > which does have exception handling. When I load the X library first into > a process, then load my library in the same process, exception handling > becomes disabled and the abort() function is called. from unwind-dc2.c > if I try to throw an exception in my code. This only happens if I load > the X library first. I don't have any control over the X library, i.e. I > cannot recompile it. > > Has anyone run into this before? Yes. > Is there some compiler option in gcc or > #define I should have to keep exception handling enabled when I load my > library? No. > It appears that this is some sort of runtime thing. Yes. Throwing an exception uses unwinder data which the runtime library uses to unwind frames on the stack when an exception is thrown. No unwinder data and you can't throw an exception; it can't be helped. Andrew.