On Wed, 2 Feb 2005, Tan-Long Phan said: > I tried to use -fexceptions to compile my application but it still gives me > the same stack. I don't have -fomit-frame-pointer in my Makefile. My > application is linked with dynamic and static libraries, and one of the > static library performs try/catch on a function declared in the dynamic > library. Ah. That's your problem. Exception throws into or out of shared libraries won't work with libraries built with a GCC which doesn't provide a shared libgcc: I think this was brought in in GCC 3.1, but I can't be sure: if you're upgrading GCC and you're not on a platform obsoleted by a later GCC release, it makes sense to go all the way to 3.4.3 in any case, I'd say. (The exception-handling system requires a *single* copy of certain data structures in the entire process; in GCC-3.0 and below, the shared library has its own copy, and things break.) -- `Blish is clearly in love with language. Unfortunately, language dislikes him intensely.' --- Russ Allbery