"H . J . Lu" <[EMAIL PROTECTED]> writes: > > The patch, in itself, is correct. Applications that want to conform to > > the C++ ABI *must* use __cxa_atexit. It is not the default in g++ > > since not all C libraries support __cxa_atexit. However, GNU libc does > > support this function, so Debian (and all other distributions) need to > > activate it. > > > > However, atexit in glibc conforms to the C++ ABI. There is no need for > gcc to use __cxa_atexit on glibc.
There is a need for the -fuse-cxa-atexit option on glibc, since g++ will never register global dtors with atexit; it will only register them with __cxa_atexit (if flag_use_cxa_atexit is true). It is easy to demonstrate that the compiler does not work correctly if -fno-use-cxa-atexit is used. Regards, Martin -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]