On Tue, Apr 19, 2011 at 10:58:28AM +1200, Michael Hope wrote:
Hi AJ. Exception support can still be turned on in C code when it's supposed to interoperate with C++ code. An example is the 64 bit division routine in libgcc - it could potentially throw a division by zero exception when called from C++ code even though the function is written in C.
Just highlighting a feature I found on my travels through the GCC docs:
GCC also supports some language extensions such as __attribute__ (( __cleanup __ )) which allows C programs to do specific work (such as freeing heap buffers) during stack unwinding.
This can be used to write C libraries which exceptions can be through _through_ safely with interoperating with C++.
Cheers, ---Dave