PATCH: Reguire __cxa_atexit for ext/{new, throw}_allocator/deallocate_global.cc
Rainer Orth
ro@CeBiTec.Uni-Bielefeld.DE
Mon Mar 1 20:27:00 GMT 2010
Dave Korn <dave.korn.cygwin@googlemail.com> writes:
> Shouldn't this be xfailed on solaris, rather than skipped on all
> non-cxa_atexit targets?
no, this way lies madness ;-( I'm strongly opposed to added any
target-based xfails or skips if there's a general feature that can be
tested for. If it's not __cxa_atexit, suggest another name for the
feature test, and we can check for cygwin there in some way. A
prominent example (which I'll attack soon) is the large list of
different target lists used to decide if the target has pthread
support. This is both inconsistent and a nightmare to maintain, e.g. if
adding a new target.
> The FAIL in this case is indicating an ABI violation w.r.t order of dtors,
> which could equally happen on non-cxa_atexit systems that implement some
> variant scheme (such as e.g. get_exit_frame_monitor hooks!) and it seems
> useful to me if the testsuite flags that up, regardless of the internal
> implementation details of how the system handles (or, in this case, fails to
> handle correctly) finalisation.
Exactly my suggestion: just give an appropriate name and add your target
(or a runtime test) to the feature test.
Rainer
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University
More information about the Libstdc++
mailing list