EricWF added a comment.
OK, here's what I would do:
(1) Split the vector, nullptr, and other weirdly failing tests into their own
files.
(2) In each file, use `defined(TEST_COMPILER_GCC) && __GXX_ABI_VERSION > 1006`
(or w/e version is broken) to define a macro when the test is expected to fail.
jfb added a comment.
Herald added subscribers: christof, aheejin.
In https://reviews.llvm.org/D23041#632708, @EricWF wrote:
> Have you filed a bug against GCC regarding its current behavior?
>
> Also it seems like a bad idea to add `-fabi-version=6`, since it selects an
> older ABI version and n
EricWF added a comment.
Have you filed a bug against GCC regarding its current behavior?
Also it seems like a bad idea to add `-fabi-version=6`, since it selects an
older ABI version and not a newer one. Testing the old behavior is not what we
want.
I think the best plan is to simply split the
jfb added a comment.
I wrote a quick test, and I think this is technically OK for x86 because
alignment "Just Works", but I think it's borked on GCC+ARM (I don't have a
system to test that here):
https://github.com/jfbastien/atomic_nullptr/blob/master/atomic_nullptr.cc
https://reviews.llvm.or
jfb added a comment.
@EricWF ran this on configuration `cxx_under_test=g++-4.9`. It generates the
following error:
libcxx/test/libcxx/atomics/atomics.align/align.pass.sh.cpp:32:
atomic_test::atomic_test() [with T = std::nullptr_t]: Assertion
`alignof(this->__a_) >= sizeof(this->__a_) && "exp
jfb created this revision.
jfb added a reviewer: EricWF.
jfb added a subscriber: cfe-commits.
The ABI version flag should fix the error.
https://reviews.llvm.org/D23041
Files:
test/libcxx/atomics/atomics.align/align.pass.sh.cpp
test/libcxx/test/config.py
Index: test/libcxx/test/config.py
==