diff options
Diffstat (limited to 'libcxx/test')
9 files changed, 32 insertions, 18 deletions
diff --git a/libcxx/test/libcxx/test/config.py b/libcxx/test/libcxx/test/config.py index 9b1ded4c366..6655743aef9 100644 --- a/libcxx/test/libcxx/test/config.py +++ b/libcxx/test/libcxx/test/config.py @@ -315,6 +315,10 @@ class Configuration(object): if self.cxx.hasCompileFlag('-faligned-allocation'): self.config.available_features.add('-faligned-allocation') + else: + # FIXME remove this once more than just clang-4.0 support + # C++17 aligned allocation. + self.config.available_features.add('no-aligned-allocation') if self.get_lit_bool('has_libatomic', False): self.config.available_features.add('libatomic') diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t.pass.cpp index 69be9b31fee..1d2f799f7c9 100644 --- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t.pass.cpp +++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t.pass.cpp @@ -9,11 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// test operator new - // asan and msan will not call the new handler. // UNSUPPORTED: sanitizer-new-delete +// XFAIL: no-aligned-allocation + +// test operator new + #include <new> #include <cstddef> #include <cassert> diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow.pass.cpp index 76b50346713..d4b1493333b 100644 --- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow.pass.cpp +++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow.pass.cpp @@ -9,11 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// test operator new (nothrow) - // asan and msan will not call the new handler. // UNSUPPORTED: sanitizer-new-delete +// XFAIL: no-aligned-allocation + +// test operator new (nothrow) + #include <new> #include <cstddef> #include <cstdint> diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow_replace.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow_replace.pass.cpp index 48ea3fde573..800318d9286 100644 --- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow_replace.pass.cpp +++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_nothrow_replace.pass.cpp @@ -8,10 +8,11 @@ //===----------------------------------------------------------------------===// // UNSUPPORTED: c++98, c++03, c++11, c++14 +// UNSUPPORTED: sanitizer-new-delete -// test operator new nothrow by replacing only operator new +// XFAIL: no-aligned-allocation -// UNSUPPORTED: sanitizer-new-delete +// test operator new nothrow by replacing only operator new #include <new> #include <cstddef> @@ -19,7 +20,6 @@ #include <cassert> #include <limits> - constexpr auto OverAligned = alignof(std::max_align_t) * 2; int A_constructed = 0; diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_replace.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_replace.pass.cpp index 6ea23ffe9f5..898d4aa167d 100644 --- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_replace.pass.cpp +++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_align_val_t_replace.pass.cpp @@ -8,10 +8,11 @@ //===----------------------------------------------------------------------===// // UNSUPPORTED: c++98, c++03, c++11, c++14 +// UNSUPPORTED: sanitizer-new-delete -// test operator new replacement +// XFAIL: no-aligned-allocation -// UNSUPPORTED: sanitizer-new-delete +// test operator new replacement #include <new> #include <cstddef> diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t.pass.cpp index 1be78fb73d2..a0caeea95d7 100644 --- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t.pass.cpp +++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t.pass.cpp @@ -9,11 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// test operator new - // asan and msan will not call the new handler. // UNSUPPORTED: sanitizer-new-delete +// XFAIL: no-aligned-allocation + +// test operator new + #include <new> #include <cstddef> #include <cassert> diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow.pass.cpp index 89e5dc820c8..4e492e09e44 100644 --- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow.pass.cpp +++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow.pass.cpp @@ -9,11 +9,13 @@ // UNSUPPORTED: c++98, c++03, c++11, c++14 -// test operator new (nothrow) - // asan and msan will not call the new handler. // UNSUPPORTED: sanitizer-new-delete +// XFAIL: no-aligned-allocation + +// test operator new (nothrow) + #include <new> #include <cstddef> #include <cstdint> diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow_replace.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow_replace.pass.cpp index fc37677e53f..8348240e5e7 100644 --- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow_replace.pass.cpp +++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_nothrow_replace.pass.cpp @@ -8,11 +8,11 @@ //===----------------------------------------------------------------------===// // UNSUPPORTED: c++98, c++03, c++11, c++14 - -// test operator new nothrow by replacing only operator new - // UNSUPPORTED: sanitizer-new-delete +// XFAIL: no-aligned-allocation + +// test operator new nothrow by replacing only operator new #include <new> #include <cstddef> diff --git a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_replace.pass.cpp b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_replace.pass.cpp index dd6fc676e96..8aecc2d7781 100644 --- a/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_replace.pass.cpp +++ b/libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new_align_val_t_replace.pass.cpp @@ -8,10 +8,11 @@ //===----------------------------------------------------------------------===// // UNSUPPORTED: c++98, c++03, c++11, c++14 +// UNSUPPORTED: sanitizer-new-delete -// test operator new replacement +// XFAIL: no-aligned-allocation -// UNSUPPORTED: sanitizer-new-delete +// test operator new replacement #include <new> #include <cstddef> |