From a506a66bd90cb15885833012fb2c2b7873bff541 Mon Sep 17 00:00:00 2001 From: Louis Dionne Date: Fri, 2 Oct 2020 15:50:55 -0400 Subject: [PATCH] [libc++] Fix several debug mode tests These tests were only being run when _LIBCPP_DEBUG was defined, which isn't the case by default when we run the test suite. In other words, all these debug mode tests were never being run. This commit makes sure they are run, and in some cases, extracts them into a file under test/libcxx to separate them from the Standard tests. Differential Revision: https://reviews.llvm.org/D88836 --- .../containers/sequences/vector/db_back.pass.cpp | 14 ++------ .../containers/sequences/vector/db_cback.pass.cpp | 14 ++------ .../containers/sequences/vector/db_cfront.pass.cpp | 14 ++------ .../containers/sequences/vector/db_cindex.pass.cpp | 14 ++------ .../containers/sequences/vector/db_front.pass.cpp | 14 ++------ .../containers/sequences/vector/db_index.pass.cpp | 14 ++------ .../sequences/vector/db_iterators_2.pass.cpp | 18 +++------- .../sequences/vector/db_iterators_3.pass.cpp | 18 +++------- .../sequences/vector/db_iterators_4.pass.cpp | 14 ++------ .../sequences/vector/db_iterators_5.pass.cpp | 14 ++------ .../sequences/vector/db_iterators_6.pass.cpp | 14 ++------ .../sequences/vector/db_iterators_7.pass.cpp | 14 ++------ .../sequences/vector/db_iterators_8.pass.cpp | 18 +++------- .../sequences/vector/pop_back_empty.pass.cpp | 6 +++- .../containers/unord/unord.map/db_bucket.pass.cpp | 35 ++++++++++++++++++ .../unord.map/db_insert_hint_const_lvalue.pass.cpp | 39 ++++++++++++++++++++ .../unord/unord.map/db_insert_hint_rvalue.pass.cpp | 42 ++++++++++++++++++++++ .../unord/unord.map/db_iterators_7.pass.cpp | 14 ++------ .../unord/unord.map/db_iterators_8.pass.cpp | 14 ++------ .../unord/unord.map/db_local_iterators_7.pass.cpp | 14 ++------ .../unord/unord.map/db_local_iterators_8.pass.cpp | 14 ++------ .../containers/unord/unord.map/db_move.pass.cpp | 40 +++++++++++++++++++++ .../unord.map.modifiers/erase_iter_db1.pass.cpp | 14 ++------ .../unord.map.modifiers/erase_iter_db2.pass.cpp | 14 ++------ .../erase_iter_iter_db1.pass.cpp | 14 ++------ .../erase_iter_iter_db2.pass.cpp | 14 ++------ .../erase_iter_iter_db3.pass.cpp | 14 ++------ .../erase_iter_iter_db4.pass.cpp | 14 ++------ .../unord.map/unord.map.swap/db_swap_1.pass.cpp | 10 +++--- .../db_insert_hint_const_lvalue.pass.cpp | 39 ++++++++++++++++++++ .../unord.multimap/db_insert_hint_rvalue.pass.cpp | 42 ++++++++++++++++++++++ .../unord/unord.multimap/db_iterators_7.pass.cpp | 14 ++------ .../unord/unord.multimap/db_iterators_8.pass.cpp | 14 ++------ .../unord.multimap/db_local_iterators_7.pass.cpp | 14 ++------ .../unord.multimap/db_local_iterators_8.pass.cpp | 14 ++------ .../unord/unord.multimap/db_move.pass.cpp | 40 +++++++++++++++++++++ .../erase_iter_db1.pass.cpp | 14 ++------ .../erase_iter_db2.pass.cpp | 14 ++------ .../erase_iter_iter_db1.pass.cpp | 14 ++------ .../erase_iter_iter_db2.pass.cpp | 14 ++------ .../erase_iter_iter_db3.pass.cpp | 14 ++------ .../erase_iter_iter_db4.pass.cpp | 14 ++------ .../unord.multimap.swap/db_swap_1.pass.cpp | 10 +++--- .../db_insert_hint_const_lvalue.pass.cpp | 39 ++++++++++++++++++++ .../unord/unord.multiset/db_iterators_7.pass.cpp | 14 ++------ .../unord/unord.multiset/db_iterators_8.pass.cpp | 14 ++------ .../unord.multiset/db_local_iterators_7.pass.cpp | 14 ++------ .../unord.multiset/db_local_iterators_8.pass.cpp | 14 ++------ .../unord/unord.multiset/db_move.pass.cpp | 40 +++++++++++++++++++++ .../unord/unord.multiset/erase_iter_db1.pass.cpp | 14 ++------ .../unord/unord.multiset/erase_iter_db2.pass.cpp | 14 ++------ .../unord.multiset/erase_iter_iter_db1.pass.cpp | 14 ++------ .../unord.multiset/erase_iter_iter_db2.pass.cpp | 14 ++------ .../unord.multiset/erase_iter_iter_db3.pass.cpp | 14 ++------ .../unord.multiset/erase_iter_iter_db4.pass.cpp | 14 ++------ .../unord.multiset.swap/db_swap_1.pass.cpp | 10 +++--- .../unord.set/db_insert_hint_const_lvalue.pass.cpp | 39 ++++++++++++++++++++ .../unord/unord.set/db_iterators_7.pass.cpp | 14 ++------ .../unord/unord.set/db_iterators_8.pass.cpp | 14 ++------ .../unord/unord.set/db_local_iterators_7.pass.cpp | 14 ++------ .../unord/unord.set/db_local_iterators_8.pass.cpp | 14 ++------ .../containers/unord/unord.set/db_move.pass.cpp | 40 +++++++++++++++++++++ .../unord/unord.set/erase_iter_db1.pass.cpp | 14 ++------ .../unord/unord.set/erase_iter_db2.pass.cpp | 14 ++------ .../unord/unord.set/erase_iter_iter_db1.pass.cpp | 14 ++------ .../unord/unord.set/erase_iter_iter_db2.pass.cpp | 14 ++------ .../unord/unord.set/erase_iter_iter_db3.pass.cpp | 14 ++------ .../unord/unord.set/erase_iter_iter_db4.pass.cpp | 14 ++------ .../unord.set/unord.set.swap/db_swap_1.pass.cpp | 10 +++--- .../basic.string/string.access/db_back.pass.cpp | 14 ++------ .../basic.string/string.access/db_cback.pass.cpp | 14 ++------ .../basic.string/string.access/db_cfront.pass.cpp | 14 ++------ .../basic.string/string.access/db_cindex.pass.cpp | 14 ++------ .../basic.string/string.access/db_front.pass.cpp | 14 ++------ .../basic.string/string.access/db_index.pass.cpp | 14 ++------ .../string.iterators/db_iterators_2.pass.cpp | 14 ++------ .../string.iterators/db_iterators_3.pass.cpp | 14 ++------ .../string.iterators/db_iterators_4.pass.cpp | 14 ++------ .../string.iterators/db_iterators_5.pass.cpp | 14 ++------ .../string.iterators/db_iterators_6.pass.cpp | 14 ++------ .../string.iterators/db_iterators_7.pass.cpp | 14 ++------ .../string.iterators/db_iterators_8.pass.cpp | 14 ++------ .../string.modifiers/clear_and_shrink_db1.pass.cpp | 14 ++------ .../string.modifiers/erase_iter_db1.pass.cpp | 14 ++------ .../string.modifiers/erase_iter_db2.pass.cpp | 14 ++------ .../string.modifiers/erase_iter_iter_db1.pass.cpp | 14 ++------ .../string.modifiers/erase_iter_iter_db2.pass.cpp | 14 ++------ .../string.modifiers/erase_iter_iter_db3.pass.cpp | 14 ++------ .../string.modifiers/erase_iter_iter_db4.pass.cpp | 14 ++------ .../string.modifiers/erase_pop_back_db1.pass.cpp | 10 +++--- .../string.modifiers/insert_iter_char_db1.pass.cpp | 10 +++--- .../insert_iter_iter_iter_db1.pass.cpp | 38 ++++++++++++++++++++ .../insert_iter_size_char_db1.pass.cpp | 10 +++--- .../std/containers/unord/unord.map/bucket.pass.cpp | 14 +------- .../unord/unord.map/unord.map.cnstr/move.pass.cpp | 13 +------ .../insert_hint_const_lvalue.pass.cpp | 19 +--------- .../insert_hint_rvalue.pass.cpp | 18 +--------- .../unord.multimap.cnstr/move.pass.cpp | 13 +------ .../insert_hint_const_lvalue.pass.cpp | 19 +--------- .../insert_hint_rvalue.pass.cpp | 18 +--------- .../insert_hint_const_lvalue.pass.cpp | 19 +--------- .../unord.multiset.cnstr/move.pass.cpp | 13 +------ .../unord.set/insert_hint_const_lvalue.pass.cpp | 19 +--------- .../unord/unord.set/unord.set.cnstr/move.pass.cpp | 13 +------ .../string_insert/iter_iter_iter.pass.cpp | 14 -------- 105 files changed, 749 insertions(+), 1026 deletions(-) create mode 100644 libcxx/test/libcxx/containers/unord/unord.map/db_bucket.pass.cpp create mode 100644 libcxx/test/libcxx/containers/unord/unord.map/db_insert_hint_const_lvalue.pass.cpp create mode 100644 libcxx/test/libcxx/containers/unord/unord.map/db_insert_hint_rvalue.pass.cpp create mode 100644 libcxx/test/libcxx/containers/unord/unord.map/db_move.pass.cpp rename libcxx/test/{std => libcxx}/containers/unord/unord.map/unord.map.modifiers/erase_iter_db1.pass.cpp (85%) rename libcxx/test/{std => libcxx}/containers/unord/unord.map/unord.map.modifiers/erase_iter_db2.pass.cpp (86%) rename libcxx/test/{std => libcxx}/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db1.pass.cpp (87%) rename libcxx/test/{std => libcxx}/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db2.pass.cpp (87%) rename libcxx/test/{std => libcxx}/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db3.pass.cpp (87%) rename libcxx/test/{std => libcxx}/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db4.pass.cpp (86%) rename libcxx/test/{std => libcxx}/containers/unord/unord.map/unord.map.swap/db_swap_1.pass.cpp (90%) create mode 100644 libcxx/test/libcxx/containers/unord/unord.multimap/db_insert_hint_const_lvalue.pass.cpp create mode 100644 libcxx/test/libcxx/containers/unord/unord.multimap/db_insert_hint_rvalue.pass.cpp rename libcxx/test/{std => libcxx}/containers/unord/unord.multimap/db_iterators_7.pass.cpp (89%) rename libcxx/test/{std => libcxx}/containers/unord/unord.multimap/db_iterators_8.pass.cpp (89%) rename libcxx/test/{std => libcxx}/containers/unord/unord.multimap/db_local_iterators_7.pass.cpp (88%) rename libcxx/test/{std => libcxx}/containers/unord/unord.multimap/db_local_iterators_8.pass.cpp (89%) create mode 100644 libcxx/test/libcxx/containers/unord/unord.multimap/db_move.pass.cpp rename libcxx/test/{std => libcxx}/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_db1.pass.cpp (85%) rename libcxx/test/{std => libcxx}/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_db2.pass.cpp (87%) rename libcxx/test/{std => libcxx}/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db1.pass.cpp (87%) rename libcxx/test/{std => libcxx}/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db2.pass.cpp (87%) rename libcxx/test/{std => libcxx}/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db3.pass.cpp (87%) rename libcxx/test/{std => libcxx}/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db4.pass.cpp (86%) rename libcxx/test/{std => libcxx}/containers/unord/unord.multimap/unord.multimap.swap/db_swap_1.pass.cpp (90%) create mode 100644 libcxx/test/libcxx/containers/unord/unord.multiset/db_insert_hint_const_lvalue.pass.cpp rename libcxx/test/{std => libcxx}/containers/unord/unord.multiset/db_iterators_7.pass.cpp (88%) rename libcxx/test/{std => libcxx}/containers/unord/unord.multiset/db_iterators_8.pass.cpp (88%) rename libcxx/test/{std => libcxx}/containers/unord/unord.multiset/db_local_iterators_7.pass.cpp (88%) rename libcxx/test/{std => libcxx}/containers/unord/unord.multiset/db_local_iterators_8.pass.cpp (88%) create mode 100644 libcxx/test/libcxx/containers/unord/unord.multiset/db_move.pass.cpp rename libcxx/test/{std => libcxx}/containers/unord/unord.multiset/erase_iter_db1.pass.cpp (84%) rename libcxx/test/{std => libcxx}/containers/unord/unord.multiset/erase_iter_db2.pass.cpp (86%) rename libcxx/test/{std => libcxx}/containers/unord/unord.multiset/erase_iter_iter_db1.pass.cpp (86%) rename libcxx/test/{std => libcxx}/containers/unord/unord.multiset/erase_iter_iter_db2.pass.cpp (86%) rename libcxx/test/{std => libcxx}/containers/unord/unord.multiset/erase_iter_iter_db3.pass.cpp (86%) rename libcxx/test/{std => libcxx}/containers/unord/unord.multiset/erase_iter_iter_db4.pass.cpp (85%) rename libcxx/test/{std => libcxx}/containers/unord/unord.multiset/unord.multiset.swap/db_swap_1.pass.cpp (89%) create mode 100644 libcxx/test/libcxx/containers/unord/unord.set/db_insert_hint_const_lvalue.pass.cpp rename libcxx/test/{std => libcxx}/containers/unord/unord.set/db_iterators_7.pass.cpp (88%) rename libcxx/test/{std => libcxx}/containers/unord/unord.set/db_iterators_8.pass.cpp (88%) rename libcxx/test/{std => libcxx}/containers/unord/unord.set/db_local_iterators_7.pass.cpp (88%) rename libcxx/test/{std => libcxx}/containers/unord/unord.set/db_local_iterators_8.pass.cpp (88%) create mode 100644 libcxx/test/libcxx/containers/unord/unord.set/db_move.pass.cpp rename libcxx/test/{std => libcxx}/containers/unord/unord.set/erase_iter_db1.pass.cpp (84%) rename libcxx/test/{std => libcxx}/containers/unord/unord.set/erase_iter_db2.pass.cpp (86%) rename libcxx/test/{std => libcxx}/containers/unord/unord.set/erase_iter_iter_db1.pass.cpp (86%) rename libcxx/test/{std => libcxx}/containers/unord/unord.set/erase_iter_iter_db2.pass.cpp (86%) rename libcxx/test/{std => libcxx}/containers/unord/unord.set/erase_iter_iter_db3.pass.cpp (86%) rename libcxx/test/{std => libcxx}/containers/unord/unord.set/erase_iter_iter_db4.pass.cpp (85%) rename libcxx/test/{std => libcxx}/containers/unord/unord.set/unord.set.swap/db_swap_1.pass.cpp (88%) rename libcxx/test/{std => libcxx}/strings/basic.string/string.access/db_back.pass.cpp (87%) rename libcxx/test/{std => libcxx}/strings/basic.string/string.access/db_cback.pass.cpp (87%) rename libcxx/test/{std => libcxx}/strings/basic.string/string.access/db_cfront.pass.cpp (87%) rename libcxx/test/{std => libcxx}/strings/basic.string/string.access/db_cindex.pass.cpp (87%) rename libcxx/test/{std => libcxx}/strings/basic.string/string.access/db_front.pass.cpp (87%) rename libcxx/test/{std => libcxx}/strings/basic.string/string.access/db_index.pass.cpp (87%) rename libcxx/test/{std => libcxx}/strings/basic.string/string.iterators/db_iterators_2.pass.cpp (87%) rename libcxx/test/{std => libcxx}/strings/basic.string/string.iterators/db_iterators_3.pass.cpp (87%) rename libcxx/test/{std => libcxx}/strings/basic.string/string.iterators/db_iterators_4.pass.cpp (88%) rename libcxx/test/{std => libcxx}/strings/basic.string/string.iterators/db_iterators_5.pass.cpp (88%) rename libcxx/test/{std => libcxx}/strings/basic.string/string.iterators/db_iterators_6.pass.cpp (88%) rename libcxx/test/{std => libcxx}/strings/basic.string/string.iterators/db_iterators_7.pass.cpp (88%) rename libcxx/test/{std => libcxx}/strings/basic.string/string.iterators/db_iterators_8.pass.cpp (87%) create mode 100644 libcxx/test/libcxx/strings/basic.string/string.modifiers/insert_iter_iter_iter_db1.pass.cpp diff --git a/libcxx/test/libcxx/containers/sequences/vector/db_back.pass.cpp b/libcxx/test/libcxx/containers/sequences/vector/db_back.pass.cpp index 3a35a08..60056d9 100644 --- a/libcxx/test/libcxx/containers/sequences/vector/db_back.pass.cpp +++ b/libcxx/test/libcxx/containers/sequences/vector/db_back.pass.cpp @@ -10,8 +10,10 @@ // Call back() on empty container. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -46,13 +48,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/sequences/vector/db_cback.pass.cpp b/libcxx/test/libcxx/containers/sequences/vector/db_cback.pass.cpp index 1c516ba..d038e29 100644 --- a/libcxx/test/libcxx/containers/sequences/vector/db_cback.pass.cpp +++ b/libcxx/test/libcxx/containers/sequences/vector/db_cback.pass.cpp @@ -10,8 +10,10 @@ // Call back() on empty const container. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -42,13 +44,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/sequences/vector/db_cfront.pass.cpp b/libcxx/test/libcxx/containers/sequences/vector/db_cfront.pass.cpp index 1dc7211..7175a09 100644 --- a/libcxx/test/libcxx/containers/sequences/vector/db_cfront.pass.cpp +++ b/libcxx/test/libcxx/containers/sequences/vector/db_cfront.pass.cpp @@ -10,8 +10,10 @@ // Call front() on empty const container. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -42,13 +44,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/sequences/vector/db_cindex.pass.cpp b/libcxx/test/libcxx/containers/sequences/vector/db_cindex.pass.cpp index ceab50a..9c094b9 100644 --- a/libcxx/test/libcxx/containers/sequences/vector/db_cindex.pass.cpp +++ b/libcxx/test/libcxx/containers/sequences/vector/db_cindex.pass.cpp @@ -10,8 +10,10 @@ // Index const vector out of bounds. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -44,13 +46,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/sequences/vector/db_front.pass.cpp b/libcxx/test/libcxx/containers/sequences/vector/db_front.pass.cpp index a4aafca..b68fdf8 100644 --- a/libcxx/test/libcxx/containers/sequences/vector/db_front.pass.cpp +++ b/libcxx/test/libcxx/containers/sequences/vector/db_front.pass.cpp @@ -10,8 +10,10 @@ // Call front() on empty container. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -46,13 +48,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/sequences/vector/db_index.pass.cpp b/libcxx/test/libcxx/containers/sequences/vector/db_index.pass.cpp index a17ba27..3796969 100644 --- a/libcxx/test/libcxx/containers/sequences/vector/db_index.pass.cpp +++ b/libcxx/test/libcxx/containers/sequences/vector/db_index.pass.cpp @@ -10,8 +10,10 @@ // Index vector out of bounds. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -46,13 +48,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/sequences/vector/db_iterators_2.pass.cpp b/libcxx/test/libcxx/containers/sequences/vector/db_iterators_2.pass.cpp index 975b5e9..b1a1c5a 100644 --- a/libcxx/test/libcxx/containers/sequences/vector/db_iterators_2.pass.cpp +++ b/libcxx/test/libcxx/containers/sequences/vector/db_iterators_2.pass.cpp @@ -10,8 +10,10 @@ // Compare iterators from different containers with <. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -30,7 +32,7 @@ int main(int, char**) typedef std::vector C; C c1; C c2; - bool b = c1.begin() < c2.begin(); + bool b = c1.begin() < c2.begin(); (void)b; assert(false); } #if TEST_STD_VER >= 11 @@ -39,18 +41,8 @@ int main(int, char**) typedef std::vector> C; C c1; C c2; - bool b = c1.begin() < c2.begin(); + bool b = c1.begin() < c2.begin(); (void)b; assert(false); } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/sequences/vector/db_iterators_3.pass.cpp b/libcxx/test/libcxx/containers/sequences/vector/db_iterators_3.pass.cpp index 0dcd6e7..45e6b26 100644 --- a/libcxx/test/libcxx/containers/sequences/vector/db_iterators_3.pass.cpp +++ b/libcxx/test/libcxx/containers/sequences/vector/db_iterators_3.pass.cpp @@ -10,8 +10,10 @@ // Subtract iterators from different containers. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -30,7 +32,7 @@ int main(int, char**) typedef std::vector C; C c1; C c2; - int i = c1.begin() - c2.begin(); + int i = c1.begin() - c2.begin(); (void)i; assert(false); } #if TEST_STD_VER >= 11 @@ -39,18 +41,8 @@ int main(int, char**) typedef std::vector> C; C c1; C c2; - int i = c1.begin() - c2.begin(); + int i = c1.begin() - c2.begin(); (void)i; assert(false); } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/sequences/vector/db_iterators_4.pass.cpp b/libcxx/test/libcxx/containers/sequences/vector/db_iterators_4.pass.cpp index 8d048f2..ae62fab 100644 --- a/libcxx/test/libcxx/containers/sequences/vector/db_iterators_4.pass.cpp +++ b/libcxx/test/libcxx/containers/sequences/vector/db_iterators_4.pass.cpp @@ -10,8 +10,10 @@ // Index iterator out of bounds. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -46,13 +48,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/sequences/vector/db_iterators_5.pass.cpp b/libcxx/test/libcxx/containers/sequences/vector/db_iterators_5.pass.cpp index 19060da..330e8dd 100644 --- a/libcxx/test/libcxx/containers/sequences/vector/db_iterators_5.pass.cpp +++ b/libcxx/test/libcxx/containers/sequences/vector/db_iterators_5.pass.cpp @@ -10,8 +10,10 @@ // Add to iterator out of bounds. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -50,13 +52,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/sequences/vector/db_iterators_6.pass.cpp b/libcxx/test/libcxx/containers/sequences/vector/db_iterators_6.pass.cpp index 13156c2..97b406f 100644 --- a/libcxx/test/libcxx/containers/sequences/vector/db_iterators_6.pass.cpp +++ b/libcxx/test/libcxx/containers/sequences/vector/db_iterators_6.pass.cpp @@ -10,8 +10,10 @@ // Decrement iterator prior to begin. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -48,13 +50,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/sequences/vector/db_iterators_7.pass.cpp b/libcxx/test/libcxx/containers/sequences/vector/db_iterators_7.pass.cpp index 943c520..7dbee21 100644 --- a/libcxx/test/libcxx/containers/sequences/vector/db_iterators_7.pass.cpp +++ b/libcxx/test/libcxx/containers/sequences/vector/db_iterators_7.pass.cpp @@ -10,8 +10,10 @@ // Increment iterator past end. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -48,13 +50,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/sequences/vector/db_iterators_8.pass.cpp b/libcxx/test/libcxx/containers/sequences/vector/db_iterators_8.pass.cpp index 39f26f6..0754aae 100644 --- a/libcxx/test/libcxx/containers/sequences/vector/db_iterators_8.pass.cpp +++ b/libcxx/test/libcxx/containers/sequences/vector/db_iterators_8.pass.cpp @@ -10,8 +10,10 @@ // Dereference non-dereferenceable iterator. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -30,7 +32,7 @@ int main(int, char**) typedef std::vector C; C c(1); C::iterator i = c.end(); - T j = *i; + T j = *i; (void)j; assert(false); } #if TEST_STD_VER >= 11 @@ -39,18 +41,8 @@ int main(int, char**) typedef std::vector> C; C c(1); C::iterator i = c.end(); - T j = *i; + T j = *i; (void)j; assert(false); } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/sequences/vector/pop_back_empty.pass.cpp b/libcxx/test/libcxx/containers/sequences/vector/pop_back_empty.pass.cpp index b35c6db..32ab5f6 100644 --- a/libcxx/test/libcxx/containers/sequences/vector/pop_back_empty.pass.cpp +++ b/libcxx/test/libcxx/containers/sequences/vector/pop_back_empty.pass.cpp @@ -10,6 +10,10 @@ // pop_back() more than the number of elements in a vector +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -25,5 +29,5 @@ int main(int, char**) { v.pop_back(); std::exit(1); - return 0; + return 0; } diff --git a/libcxx/test/libcxx/containers/unord/unord.map/db_bucket.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.map/db_bucket.pass.cpp new file mode 100644 index 0000000..242b439 --- /dev/null +++ b/libcxx/test/libcxx/containers/unord/unord.map/db_bucket.pass.cpp @@ -0,0 +1,35 @@ +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +// + +// size_type bucket(const key_type& __k) const; + +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 +#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) + +#include +#include +#include + +#include "test_macros.h" + +int main(int, char**) +{ + { + typedef std::unordered_map C; + C c; + (void) c.bucket(3); + assert(false); + } + + return 0; +} diff --git a/libcxx/test/libcxx/containers/unord/unord.map/db_insert_hint_const_lvalue.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.map/db_insert_hint_const_lvalue.pass.cpp new file mode 100644 index 0000000..5c6c51f --- /dev/null +++ b/libcxx/test/libcxx/containers/unord/unord.map/db_insert_hint_const_lvalue.pass.cpp @@ -0,0 +1,39 @@ +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +// + +// iterator insert(const_iterator p, const value_type& x); + +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 +#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) + +#include +#include + +#include "test_macros.h" + +int main(int, char**) +{ + { + typedef std::unordered_map C; + typedef C::iterator R; + typedef C::value_type P; + C c; + C c2; + C::const_iterator e = c2.end(); + P v(3.5, 3); + R r = c.insert(e, v); + assert(false); + } + + return 0; +} diff --git a/libcxx/test/libcxx/containers/unord/unord.map/db_insert_hint_rvalue.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.map/db_insert_hint_rvalue.pass.cpp new file mode 100644 index 0000000..83ac379 --- /dev/null +++ b/libcxx/test/libcxx/containers/unord/unord.map/db_insert_hint_rvalue.pass.cpp @@ -0,0 +1,42 @@ +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +// UNSUPPORTED: c++03 + +// + +// template ::value>::type> +// iterator insert(const_iterator p, P&& x); + +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 +#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) + +#include +#include + +#include "test_macros.h" + +int main(int, char**) +{ + { + typedef std::unordered_map C; + typedef C::iterator R; + typedef C::value_type P; + C c; + C c2; + C::const_iterator e = c2.end(); + R r = c.insert(e, P(3.5, 3)); + assert(false); + } + + return 0; +} diff --git a/libcxx/test/libcxx/containers/unord/unord.map/db_iterators_7.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.map/db_iterators_7.pass.cpp index 9ff6baf..513c560 100644 --- a/libcxx/test/libcxx/containers/unord/unord.map/db_iterators_7.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.map/db_iterators_7.pass.cpp @@ -10,8 +10,10 @@ // Increment iterator past end. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -50,13 +52,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/unord/unord.map/db_iterators_8.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.map/db_iterators_8.pass.cpp index ef383aa..f12ba00 100644 --- a/libcxx/test/libcxx/containers/unord/unord.map/db_iterators_8.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.map/db_iterators_8.pass.cpp @@ -10,8 +10,10 @@ // Dereference non-dereferenceable iterator. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -46,13 +48,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/unord/unord.map/db_local_iterators_7.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.map/db_local_iterators_7.pass.cpp index 5c2b402..19b0ee7 100644 --- a/libcxx/test/libcxx/containers/unord/unord.map/db_local_iterators_7.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.map/db_local_iterators_7.pass.cpp @@ -10,8 +10,10 @@ // Increment local_iterator past end. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -47,13 +49,3 @@ int main(int, char**) #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/unord/unord.map/db_local_iterators_8.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.map/db_local_iterators_8.pass.cpp index 8e76f1b..d696d54 100644 --- a/libcxx/test/libcxx/containers/unord/unord.map/db_local_iterators_8.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.map/db_local_iterators_8.pass.cpp @@ -10,8 +10,10 @@ // Dereference non-dereferenceable iterator. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -44,13 +46,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/unord/unord.map/db_move.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.map/db_move.pass.cpp new file mode 100644 index 0000000..5ae9a14 --- /dev/null +++ b/libcxx/test/libcxx/containers/unord/unord.map/db_move.pass.cpp @@ -0,0 +1,40 @@ +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +// + +// unordered_map(unordered_map&& u); + +// UNSUPPORTED: c++03 + +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 +#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) + +#include +#include +#include + +#include "test_macros.h" + +int main(int, char**) +{ + { + std::unordered_map s1 = {{1, 1}, {2, 2}, {3, 3}}; + std::unordered_map::iterator i = s1.begin(); + std::pair k = *i; + std::unordered_map s2 = std::move(s1); + assert(*i == k); + s2.erase(i); + assert(s2.size() == 2); + } + + return 0; +} diff --git a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_db1.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_db1.pass.cpp similarity index 85% rename from libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_db1.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_db1.pass.cpp index 9ed4757..a3873ec 100644 --- a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_db1.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_db1.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator position) with end() -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -30,13 +32,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_db2.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_db2.pass.cpp similarity index 86% rename from libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_db2.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_db2.pass.cpp index 0b44f0b..7aa39f2 100644 --- a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_db2.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_db2.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator position) with iterator from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -33,13 +35,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db1.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db1.pass.cpp similarity index 87% rename from libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db1.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db1.pass.cpp index 6ca0f7a..841b900 100644 --- a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db1.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db1.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with first iterator from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -32,13 +34,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db2.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db2.pass.cpp similarity index 87% rename from libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db2.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db2.pass.cpp index 7c714ab..b124a94 100644 --- a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db2.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db2.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with second iterator from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -32,13 +34,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db3.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db3.pass.cpp similarity index 87% rename from libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db3.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db3.pass.cpp index 9061bb0..c61cfde 100644 --- a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db3.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db3.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with both iterators from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -32,13 +34,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db4.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db4.pass.cpp similarity index 86% rename from libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db4.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db4.pass.cpp index 0edd67a..4a485c3 100644 --- a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db4.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db4.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with a bad range -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -31,13 +33,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.map/unord.map.swap/db_swap_1.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.map/unord.map.swap/db_swap_1.pass.cpp similarity index 90% rename from libcxx/test/std/containers/unord/unord.map/unord.map.swap/db_swap_1.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.map/unord.map.swap/db_swap_1.pass.cpp index 6a80c09..3e01d65 100644 --- a/libcxx/test/std/containers/unord/unord.map/unord.map.swap/db_swap_1.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.map/unord.map.swap/db_swap_1.pass.cpp @@ -14,9 +14,11 @@ // void swap(unordered_map& x, unordered_map& y); -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) -#endif #include #include @@ -25,7 +27,6 @@ int main(int, char**) { -#if _LIBCPP_DEBUG >= 1 { typedef std::pair P; P a1[] = {P(1, 1), P(3, 3), P(7, 7), P(9, 9), P(10, 10)}; @@ -41,7 +42,6 @@ int main(int, char**) c1.erase(i1); assert(false); } -#endif - return 0; + return 0; } diff --git a/libcxx/test/libcxx/containers/unord/unord.multimap/db_insert_hint_const_lvalue.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multimap/db_insert_hint_const_lvalue.pass.cpp new file mode 100644 index 0000000..de8b504 --- /dev/null +++ b/libcxx/test/libcxx/containers/unord/unord.multimap/db_insert_hint_const_lvalue.pass.cpp @@ -0,0 +1,39 @@ +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +// + +// iterator insert(const_iterator p, const value_type& x); + +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 +#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) + +#include +#include + +#include "test_macros.h" + +int main(int, char**) +{ + { + typedef std::unordered_multimap C; + typedef C::iterator R; + typedef C::value_type P; + C c; + C c2; + C::const_iterator e = c2.end(); + P v(3.5, 3); + R r = c.insert(e, v); + assert(false); + } + + return 0; +} diff --git a/libcxx/test/libcxx/containers/unord/unord.multimap/db_insert_hint_rvalue.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multimap/db_insert_hint_rvalue.pass.cpp new file mode 100644 index 0000000..47bfb4b --- /dev/null +++ b/libcxx/test/libcxx/containers/unord/unord.multimap/db_insert_hint_rvalue.pass.cpp @@ -0,0 +1,42 @@ +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +// UNSUPPORTED: c++03 + +// + +// template ::value>::type> +// iterator insert(const_iterator p, P&& x); + +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 +#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) + +#include +#include + +#include "test_macros.h" + +int main(int, char**) +{ + { + typedef std::unordered_multimap C; + typedef C::iterator R; + typedef C::value_type P; + C c; + C c2; + C::const_iterator e = c2.end(); + R r = c.insert(e, P(3.5, 3)); + assert(false); + } + + return 0; +} diff --git a/libcxx/test/std/containers/unord/unord.multimap/db_iterators_7.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multimap/db_iterators_7.pass.cpp similarity index 89% rename from libcxx/test/std/containers/unord/unord.multimap/db_iterators_7.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multimap/db_iterators_7.pass.cpp index 871bd79..1178830 100644 --- a/libcxx/test/std/containers/unord/unord.multimap/db_iterators_7.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multimap/db_iterators_7.pass.cpp @@ -10,8 +10,10 @@ // Increment iterator past end. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -50,13 +52,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.multimap/db_iterators_8.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multimap/db_iterators_8.pass.cpp similarity index 89% rename from libcxx/test/std/containers/unord/unord.multimap/db_iterators_8.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multimap/db_iterators_8.pass.cpp index 821de25..a5861fb 100644 --- a/libcxx/test/std/containers/unord/unord.multimap/db_iterators_8.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multimap/db_iterators_8.pass.cpp @@ -10,8 +10,10 @@ // Dereference non-dereferenceable iterator. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -46,13 +48,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.multimap/db_local_iterators_7.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multimap/db_local_iterators_7.pass.cpp similarity index 88% rename from libcxx/test/std/containers/unord/unord.multimap/db_local_iterators_7.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multimap/db_local_iterators_7.pass.cpp index 9da1b61..a817f81 100644 --- a/libcxx/test/std/containers/unord/unord.multimap/db_local_iterators_7.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multimap/db_local_iterators_7.pass.cpp @@ -10,8 +10,10 @@ // Increment local_iterator past end. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -47,13 +49,3 @@ int main(int, char**) #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.multimap/db_local_iterators_8.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multimap/db_local_iterators_8.pass.cpp similarity index 89% rename from libcxx/test/std/containers/unord/unord.multimap/db_local_iterators_8.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multimap/db_local_iterators_8.pass.cpp index dd56647..9ac363e 100644 --- a/libcxx/test/std/containers/unord/unord.multimap/db_local_iterators_8.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multimap/db_local_iterators_8.pass.cpp @@ -10,8 +10,10 @@ // Dereference non-dereferenceable iterator. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -44,13 +46,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/unord/unord.multimap/db_move.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multimap/db_move.pass.cpp new file mode 100644 index 0000000..3b1f23a --- /dev/null +++ b/libcxx/test/libcxx/containers/unord/unord.multimap/db_move.pass.cpp @@ -0,0 +1,40 @@ +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +// UNSUPPORTED: c++03 + +// + +// unordered_multimap(unordered_multimap&& u); + +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 +#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) + +#include +#include +#include + +#include "test_macros.h" + +int main(int, char**) +{ + { + std::unordered_multimap s1 = {{1, 1}, {2, 2}, {3, 3}}; + std::unordered_multimap::iterator i = s1.begin(); + std::pair k = *i; + std::unordered_multimap s2 = std::move(s1); + assert(*i == k); + s2.erase(i); + assert(s2.size() == 2); + } + + return 0; +} diff --git a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_db1.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_db1.pass.cpp similarity index 85% rename from libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_db1.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_db1.pass.cpp index 940db98..da93622 100644 --- a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_db1.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_db1.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator position) with end() -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -30,13 +32,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_db2.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_db2.pass.cpp similarity index 87% rename from libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_db2.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_db2.pass.cpp index 4da7e60..0e99ca4 100644 --- a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_db2.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_db2.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator position) with iterator from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -33,13 +35,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db1.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db1.pass.cpp similarity index 87% rename from libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db1.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db1.pass.cpp index b14c85d..f8412d9 100644 --- a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db1.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db1.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with first iterator from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -32,13 +34,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db2.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db2.pass.cpp similarity index 87% rename from libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db2.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db2.pass.cpp index 03be37a..a028e11 100644 --- a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db2.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db2.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with second iterator from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -32,13 +34,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db3.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db3.pass.cpp similarity index 87% rename from libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db3.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db3.pass.cpp index cd1892e..5506af5 100644 --- a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db3.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db3.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with both iterators from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -32,13 +34,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db4.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db4.pass.cpp similarity index 86% rename from libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db4.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db4.pass.cpp index 7ecf366..97119b8 100644 --- a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db4.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db4.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with a bad range -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -31,13 +33,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.swap/db_swap_1.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.swap/db_swap_1.pass.cpp similarity index 90% rename from libcxx/test/std/containers/unord/unord.multimap/unord.multimap.swap/db_swap_1.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.swap/db_swap_1.pass.cpp index 65fb5ae..73d9dc3 100644 --- a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.swap/db_swap_1.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.swap/db_swap_1.pass.cpp @@ -14,9 +14,11 @@ // void swap(unordered_multimap& x, unordered_multimap& y); -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) -#endif #include #include @@ -25,7 +27,6 @@ int main(int, char**) { -#if _LIBCPP_DEBUG >= 1 { typedef std::pair P; P a1[] = {P(1, 1), P(3, 3), P(7, 7), P(9, 9), P(10, 10)}; @@ -41,7 +42,6 @@ int main(int, char**) c1.erase(i1); assert(false); } -#endif - return 0; + return 0; } diff --git a/libcxx/test/libcxx/containers/unord/unord.multiset/db_insert_hint_const_lvalue.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multiset/db_insert_hint_const_lvalue.pass.cpp new file mode 100644 index 0000000..de604c1 --- /dev/null +++ b/libcxx/test/libcxx/containers/unord/unord.multiset/db_insert_hint_const_lvalue.pass.cpp @@ -0,0 +1,39 @@ +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +// + +// iterator insert(const_iterator p, const value_type& x); + +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 +#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) + +#include +#include + +#include "test_macros.h" + +int main(int, char**) +{ + { + typedef std::unordered_multiset C; + typedef C::iterator R; + typedef C::value_type P; + C c; + C c2; + C::const_iterator e = c2.end(); + P v(3.5); + R r = c.insert(e, v); + assert(false); + } + + return 0; +} diff --git a/libcxx/test/std/containers/unord/unord.multiset/db_iterators_7.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multiset/db_iterators_7.pass.cpp similarity index 88% rename from libcxx/test/std/containers/unord/unord.multiset/db_iterators_7.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multiset/db_iterators_7.pass.cpp index 0b401e6..89d3a57 100644 --- a/libcxx/test/std/containers/unord/unord.multiset/db_iterators_7.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multiset/db_iterators_7.pass.cpp @@ -10,8 +10,10 @@ // Increment iterator past end. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -48,13 +50,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.multiset/db_iterators_8.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multiset/db_iterators_8.pass.cpp similarity index 88% rename from libcxx/test/std/containers/unord/unord.multiset/db_iterators_8.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multiset/db_iterators_8.pass.cpp index 88280e6..579bd84 100644 --- a/libcxx/test/std/containers/unord/unord.multiset/db_iterators_8.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multiset/db_iterators_8.pass.cpp @@ -10,8 +10,10 @@ // Dereference non-dereferenceable iterator. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -44,13 +46,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.multiset/db_local_iterators_7.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multiset/db_local_iterators_7.pass.cpp similarity index 88% rename from libcxx/test/std/containers/unord/unord.multiset/db_local_iterators_7.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multiset/db_local_iterators_7.pass.cpp index 5ec1577..c85ed1d 100644 --- a/libcxx/test/std/containers/unord/unord.multiset/db_local_iterators_7.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multiset/db_local_iterators_7.pass.cpp @@ -10,8 +10,10 @@ // Increment local_iterator past end. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -47,13 +49,3 @@ int main(int, char**) #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.multiset/db_local_iterators_8.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multiset/db_local_iterators_8.pass.cpp similarity index 88% rename from libcxx/test/std/containers/unord/unord.multiset/db_local_iterators_8.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multiset/db_local_iterators_8.pass.cpp index 0d92b95..597edd0 100644 --- a/libcxx/test/std/containers/unord/unord.multiset/db_local_iterators_8.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multiset/db_local_iterators_8.pass.cpp @@ -10,8 +10,10 @@ // Dereference non-dereferenceable iterator. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -44,13 +46,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/unord/unord.multiset/db_move.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multiset/db_move.pass.cpp new file mode 100644 index 0000000..41da7ea --- /dev/null +++ b/libcxx/test/libcxx/containers/unord/unord.multiset/db_move.pass.cpp @@ -0,0 +1,40 @@ +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +// UNSUPPORTED: c++03 + +// + +// unordered_multiset(unordered_multiset&& u); + +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 +#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) + +#include +#include +#include + +#include "test_macros.h" + +int main(int, char**) +{ + { + std::unordered_multiset s1 = {1, 2, 3}; + std::unordered_multiset::iterator i = s1.begin(); + int k = *i; + std::unordered_multiset s2 = std::move(s1); + assert(*i == k); + s2.erase(i); + assert(s2.size() == 2); + } + + return 0; +} diff --git a/libcxx/test/std/containers/unord/unord.multiset/erase_iter_db1.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_db1.pass.cpp similarity index 84% rename from libcxx/test/std/containers/unord/unord.multiset/erase_iter_db1.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_db1.pass.cpp index 788b5ac..b967c59 100644 --- a/libcxx/test/std/containers/unord/unord.multiset/erase_iter_db1.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_db1.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator position) with end() -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -29,13 +31,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.multiset/erase_iter_db2.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_db2.pass.cpp similarity index 86% rename from libcxx/test/std/containers/unord/unord.multiset/erase_iter_db2.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_db2.pass.cpp index 68828d5..d704dca 100644 --- a/libcxx/test/std/containers/unord/unord.multiset/erase_iter_db2.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_db2.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator position) with iterator from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -32,13 +34,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.multiset/erase_iter_iter_db1.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_iter_db1.pass.cpp similarity index 86% rename from libcxx/test/std/containers/unord/unord.multiset/erase_iter_iter_db1.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_iter_db1.pass.cpp index 118fadf..1a183e6 100644 --- a/libcxx/test/std/containers/unord/unord.multiset/erase_iter_iter_db1.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_iter_db1.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with first iterator from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -31,13 +33,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.multiset/erase_iter_iter_db2.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_iter_db2.pass.cpp similarity index 86% rename from libcxx/test/std/containers/unord/unord.multiset/erase_iter_iter_db2.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_iter_db2.pass.cpp index ad6b8cd..de3ebaa 100644 --- a/libcxx/test/std/containers/unord/unord.multiset/erase_iter_iter_db2.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_iter_db2.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with second iterator from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -31,13 +33,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.multiset/erase_iter_iter_db3.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_iter_db3.pass.cpp similarity index 86% rename from libcxx/test/std/containers/unord/unord.multiset/erase_iter_iter_db3.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_iter_db3.pass.cpp index 5b5bbba..9d36b53 100644 --- a/libcxx/test/std/containers/unord/unord.multiset/erase_iter_iter_db3.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_iter_db3.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with both iterators from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -31,13 +33,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.multiset/erase_iter_iter_db4.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_iter_db4.pass.cpp similarity index 85% rename from libcxx/test/std/containers/unord/unord.multiset/erase_iter_iter_db4.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_iter_db4.pass.cpp index fbeb8e0..a68f312 100644 --- a/libcxx/test/std/containers/unord/unord.multiset/erase_iter_iter_db4.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_iter_db4.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with a bad range -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -30,13 +32,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.multiset/unord.multiset.swap/db_swap_1.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.multiset/unord.multiset.swap/db_swap_1.pass.cpp similarity index 89% rename from libcxx/test/std/containers/unord/unord.multiset/unord.multiset.swap/db_swap_1.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.multiset/unord.multiset.swap/db_swap_1.pass.cpp index e1f45e1..2feba5c 100644 --- a/libcxx/test/std/containers/unord/unord.multiset/unord.multiset.swap/db_swap_1.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.multiset/unord.multiset.swap/db_swap_1.pass.cpp @@ -14,9 +14,11 @@ // void swap(unordered_multiset& x, unordered_multiset& y); -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) -#endif #include #include @@ -25,7 +27,6 @@ int main(int, char**) { -#if _LIBCPP_DEBUG >= 1 { int a1[] = {1, 3, 7, 9, 10}; int a2[] = {0, 2, 4, 5, 6, 8, 11}; @@ -40,7 +41,6 @@ int main(int, char**) c1.erase(i1); assert(false); } -#endif - return 0; + return 0; } diff --git a/libcxx/test/libcxx/containers/unord/unord.set/db_insert_hint_const_lvalue.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.set/db_insert_hint_const_lvalue.pass.cpp new file mode 100644 index 0000000..3303d08 --- /dev/null +++ b/libcxx/test/libcxx/containers/unord/unord.set/db_insert_hint_const_lvalue.pass.cpp @@ -0,0 +1,39 @@ +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +// + +// iterator insert(const_iterator p, const value_type& x); + +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 +#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) + +#include +#include + +#include "test_macros.h" + +int main(int, char**) +{ + { + typedef std::unordered_set C; + typedef C::iterator R; + typedef C::value_type P; + C c; + C c2; + C::const_iterator e = c2.end(); + P v(3.5); + R r = c.insert(e, v); + assert(false); + } + + return 0; +} diff --git a/libcxx/test/std/containers/unord/unord.set/db_iterators_7.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.set/db_iterators_7.pass.cpp similarity index 88% rename from libcxx/test/std/containers/unord/unord.set/db_iterators_7.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.set/db_iterators_7.pass.cpp index 0de979a..12e56ea 100644 --- a/libcxx/test/std/containers/unord/unord.set/db_iterators_7.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.set/db_iterators_7.pass.cpp @@ -10,8 +10,10 @@ // Increment iterator past end. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -48,13 +50,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.set/db_iterators_8.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.set/db_iterators_8.pass.cpp similarity index 88% rename from libcxx/test/std/containers/unord/unord.set/db_iterators_8.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.set/db_iterators_8.pass.cpp index b6acf23..3333be8 100644 --- a/libcxx/test/std/containers/unord/unord.set/db_iterators_8.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.set/db_iterators_8.pass.cpp @@ -10,8 +10,10 @@ // Dereference non-dereferenceable iterator. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -44,13 +46,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.set/db_local_iterators_7.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.set/db_local_iterators_7.pass.cpp similarity index 88% rename from libcxx/test/std/containers/unord/unord.set/db_local_iterators_7.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.set/db_local_iterators_7.pass.cpp index df0f20b..f003c2b 100644 --- a/libcxx/test/std/containers/unord/unord.set/db_local_iterators_7.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.set/db_local_iterators_7.pass.cpp @@ -10,8 +10,10 @@ // Increment local_iterator past end. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -47,13 +49,3 @@ int main(int, char**) #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.set/db_local_iterators_8.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.set/db_local_iterators_8.pass.cpp similarity index 88% rename from libcxx/test/std/containers/unord/unord.set/db_local_iterators_8.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.set/db_local_iterators_8.pass.cpp index 7112102..999ec8b 100644 --- a/libcxx/test/std/containers/unord/unord.set/db_local_iterators_8.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.set/db_local_iterators_8.pass.cpp @@ -10,8 +10,10 @@ // Dereference non-dereferenceable iterator. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -45,13 +47,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/containers/unord/unord.set/db_move.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.set/db_move.pass.cpp new file mode 100644 index 0000000..02f8368 --- /dev/null +++ b/libcxx/test/libcxx/containers/unord/unord.set/db_move.pass.cpp @@ -0,0 +1,40 @@ +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +// UNSUPPORTED: c++03 + +// + +// unordered_set(unordered_set&& u); + +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 +#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) + +#include +#include +#include + +#include "test_macros.h" + +int main(int, char**) +{ + { + std::unordered_set s1 = {1, 2, 3}; + std::unordered_set::iterator i = s1.begin(); + int k = *i; + std::unordered_set s2 = std::move(s1); + assert(*i == k); + s2.erase(i); + assert(s2.size() == 2); + } + + return 0; +} diff --git a/libcxx/test/std/containers/unord/unord.set/erase_iter_db1.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.set/erase_iter_db1.pass.cpp similarity index 84% rename from libcxx/test/std/containers/unord/unord.set/erase_iter_db1.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.set/erase_iter_db1.pass.cpp index 063ed93..b5ddd8c 100644 --- a/libcxx/test/std/containers/unord/unord.set/erase_iter_db1.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.set/erase_iter_db1.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator position) with end() -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -29,13 +31,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.set/erase_iter_db2.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.set/erase_iter_db2.pass.cpp similarity index 86% rename from libcxx/test/std/containers/unord/unord.set/erase_iter_db2.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.set/erase_iter_db2.pass.cpp index 30dd46f..bd14a3c 100644 --- a/libcxx/test/std/containers/unord/unord.set/erase_iter_db2.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.set/erase_iter_db2.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator position) with iterator from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -32,13 +34,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.set/erase_iter_iter_db1.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.set/erase_iter_iter_db1.pass.cpp similarity index 86% rename from libcxx/test/std/containers/unord/unord.set/erase_iter_iter_db1.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.set/erase_iter_iter_db1.pass.cpp index a84b060..70a1afb 100644 --- a/libcxx/test/std/containers/unord/unord.set/erase_iter_iter_db1.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.set/erase_iter_iter_db1.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with first iterator from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -31,13 +33,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.set/erase_iter_iter_db2.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.set/erase_iter_iter_db2.pass.cpp similarity index 86% rename from libcxx/test/std/containers/unord/unord.set/erase_iter_iter_db2.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.set/erase_iter_iter_db2.pass.cpp index 9fb3bc3..88f33d5 100644 --- a/libcxx/test/std/containers/unord/unord.set/erase_iter_iter_db2.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.set/erase_iter_iter_db2.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with second iterator from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -31,13 +33,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.set/erase_iter_iter_db3.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.set/erase_iter_iter_db3.pass.cpp similarity index 86% rename from libcxx/test/std/containers/unord/unord.set/erase_iter_iter_db3.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.set/erase_iter_iter_db3.pass.cpp index 9f056e8..8aa1b5a 100644 --- a/libcxx/test/std/containers/unord/unord.set/erase_iter_iter_db3.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.set/erase_iter_iter_db3.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with both iterators from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -31,13 +33,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.set/erase_iter_iter_db4.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.set/erase_iter_iter_db4.pass.cpp similarity index 85% rename from libcxx/test/std/containers/unord/unord.set/erase_iter_iter_db4.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.set/erase_iter_iter_db4.pass.cpp index f56297d..0922c65 100644 --- a/libcxx/test/std/containers/unord/unord.set/erase_iter_iter_db4.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.set/erase_iter_iter_db4.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with a bad range -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -30,13 +32,3 @@ int main(int, char**) assert(false); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/containers/unord/unord.set/unord.set.swap/db_swap_1.pass.cpp b/libcxx/test/libcxx/containers/unord/unord.set/unord.set.swap/db_swap_1.pass.cpp similarity index 88% rename from libcxx/test/std/containers/unord/unord.set/unord.set.swap/db_swap_1.pass.cpp rename to libcxx/test/libcxx/containers/unord/unord.set/unord.set.swap/db_swap_1.pass.cpp index 7682a27..b65cc69 100644 --- a/libcxx/test/std/containers/unord/unord.set/unord.set.swap/db_swap_1.pass.cpp +++ b/libcxx/test/libcxx/containers/unord/unord.set/unord.set.swap/db_swap_1.pass.cpp @@ -14,9 +14,11 @@ // void swap(unordered_set& x, unordered_set& y); -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) -#endif #include #include @@ -25,7 +27,6 @@ int main(int, char**) { -#if _LIBCPP_DEBUG >= 1 { int a1[] = {1, 3, 7, 9, 10}; int a2[] = {0, 2, 4, 5, 6, 8, 11}; @@ -40,7 +41,6 @@ int main(int, char**) c1.erase(i1); assert(false); } -#endif - return 0; + return 0; } diff --git a/libcxx/test/std/strings/basic.string/string.access/db_back.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.access/db_back.pass.cpp similarity index 87% rename from libcxx/test/std/strings/basic.string/string.access/db_back.pass.cpp rename to libcxx/test/libcxx/strings/basic.string/string.access/db_back.pass.cpp index 548bf01..31000d0 100644 --- a/libcxx/test/std/strings/basic.string/string.access/db_back.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.access/db_back.pass.cpp @@ -10,8 +10,10 @@ // Call back() on empty container. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -44,13 +46,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/strings/basic.string/string.access/db_cback.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.access/db_cback.pass.cpp similarity index 87% rename from libcxx/test/std/strings/basic.string/string.access/db_cback.pass.cpp rename to libcxx/test/libcxx/strings/basic.string/string.access/db_cback.pass.cpp index 47cda49..61d504f 100644 --- a/libcxx/test/std/strings/basic.string/string.access/db_cback.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.access/db_cback.pass.cpp @@ -10,8 +10,10 @@ // Call back() on empty const container. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -40,13 +42,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/strings/basic.string/string.access/db_cfront.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.access/db_cfront.pass.cpp similarity index 87% rename from libcxx/test/std/strings/basic.string/string.access/db_cfront.pass.cpp rename to libcxx/test/libcxx/strings/basic.string/string.access/db_cfront.pass.cpp index 12b5e51..654c575 100644 --- a/libcxx/test/std/strings/basic.string/string.access/db_cfront.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.access/db_cfront.pass.cpp @@ -10,8 +10,10 @@ // Call front() on empty const container. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -40,13 +42,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/strings/basic.string/string.access/db_cindex.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.access/db_cindex.pass.cpp similarity index 87% rename from libcxx/test/std/strings/basic.string/string.access/db_cindex.pass.cpp rename to libcxx/test/libcxx/strings/basic.string/string.access/db_cindex.pass.cpp index a369cb623..2a5267e 100644 --- a/libcxx/test/std/strings/basic.string/string.access/db_cindex.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.access/db_cindex.pass.cpp @@ -10,8 +10,10 @@ // Index const string out of bounds. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -42,13 +44,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/strings/basic.string/string.access/db_front.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.access/db_front.pass.cpp similarity index 87% rename from libcxx/test/std/strings/basic.string/string.access/db_front.pass.cpp rename to libcxx/test/libcxx/strings/basic.string/string.access/db_front.pass.cpp index 6f8dcd5..c73c536 100644 --- a/libcxx/test/std/strings/basic.string/string.access/db_front.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.access/db_front.pass.cpp @@ -10,8 +10,10 @@ // Call front() on empty container. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -44,13 +46,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/strings/basic.string/string.access/db_index.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.access/db_index.pass.cpp similarity index 87% rename from libcxx/test/std/strings/basic.string/string.access/db_index.pass.cpp rename to libcxx/test/libcxx/strings/basic.string/string.access/db_index.pass.cpp index bc25023..ef250b0 100644 --- a/libcxx/test/std/strings/basic.string/string.access/db_index.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.access/db_index.pass.cpp @@ -10,8 +10,10 @@ // Index string out of bounds. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -42,13 +44,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/strings/basic.string/string.iterators/db_iterators_2.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_2.pass.cpp similarity index 87% rename from libcxx/test/std/strings/basic.string/string.iterators/db_iterators_2.pass.cpp rename to libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_2.pass.cpp index 41323e0..df165b7 100644 --- a/libcxx/test/std/strings/basic.string/string.iterators/db_iterators_2.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_2.pass.cpp @@ -10,8 +10,10 @@ // Compare iterators from different containers with <. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -44,13 +46,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/strings/basic.string/string.iterators/db_iterators_3.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_3.pass.cpp similarity index 87% rename from libcxx/test/std/strings/basic.string/string.iterators/db_iterators_3.pass.cpp rename to libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_3.pass.cpp index ea0f286..9f51466 100644 --- a/libcxx/test/std/strings/basic.string/string.iterators/db_iterators_3.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_3.pass.cpp @@ -10,8 +10,10 @@ // Subtract iterators from different containers with <. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -44,13 +46,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/strings/basic.string/string.iterators/db_iterators_4.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_4.pass.cpp similarity index 88% rename from libcxx/test/std/strings/basic.string/string.iterators/db_iterators_4.pass.cpp rename to libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_4.pass.cpp index 07b1b82..28aa876 100644 --- a/libcxx/test/std/strings/basic.string/string.iterators/db_iterators_4.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_4.pass.cpp @@ -10,8 +10,10 @@ // Index iterator out of bounds. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -44,13 +46,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/strings/basic.string/string.iterators/db_iterators_5.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_5.pass.cpp similarity index 88% rename from libcxx/test/std/strings/basic.string/string.iterators/db_iterators_5.pass.cpp rename to libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_5.pass.cpp index a183282..9fd4dec 100644 --- a/libcxx/test/std/strings/basic.string/string.iterators/db_iterators_5.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_5.pass.cpp @@ -10,8 +10,10 @@ // Add to iterator out of bounds. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -48,13 +50,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/strings/basic.string/string.iterators/db_iterators_6.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_6.pass.cpp similarity index 88% rename from libcxx/test/std/strings/basic.string/string.iterators/db_iterators_6.pass.cpp rename to libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_6.pass.cpp index a24c370..802d6b4 100644 --- a/libcxx/test/std/strings/basic.string/string.iterators/db_iterators_6.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_6.pass.cpp @@ -10,8 +10,10 @@ // Decrement iterator prior to begin. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -46,13 +48,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/strings/basic.string/string.iterators/db_iterators_7.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_7.pass.cpp similarity index 88% rename from libcxx/test/std/strings/basic.string/string.iterators/db_iterators_7.pass.cpp rename to libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_7.pass.cpp index 16a2087..86b175f 100644 --- a/libcxx/test/std/strings/basic.string/string.iterators/db_iterators_7.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_7.pass.cpp @@ -10,8 +10,10 @@ // Increment iterator past end. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -46,13 +48,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/std/strings/basic.string/string.iterators/db_iterators_8.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_8.pass.cpp similarity index 87% rename from libcxx/test/std/strings/basic.string/string.iterators/db_iterators_8.pass.cpp rename to libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_8.pass.cpp index 2275020..ca3521d 100644 --- a/libcxx/test/std/strings/basic.string/string.iterators/db_iterators_8.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_8.pass.cpp @@ -10,8 +10,10 @@ // Dereference non-dereferenceable iterator. -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -42,13 +44,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/strings/basic.string/string.modifiers/clear_and_shrink_db1.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.modifiers/clear_and_shrink_db1.pass.cpp index 6da77e4..5369a82 100644 --- a/libcxx/test/libcxx/strings/basic.string/string.modifiers/clear_and_shrink_db1.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.modifiers/clear_and_shrink_db1.pass.cpp @@ -10,8 +10,10 @@ // Call __clear_and_shrink() and ensure string invariants hold -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -39,13 +41,3 @@ int main(int, char**) assert(l.capacity() < cap); } } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_db1.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_db1.pass.cpp index a5258f9..f9dd19c 100644 --- a/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_db1.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_db1.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator position) with end() -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -40,13 +42,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_db2.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_db2.pass.cpp index 099ce74..3e1b5fc 100644 --- a/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_db2.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_db2.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator position) with iterator from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -42,13 +44,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db1.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db1.pass.cpp index 1802f62..ce0690f 100644 --- a/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db1.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db1.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with first iterator from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -40,13 +42,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db2.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db2.pass.cpp index fe65851..87e2f50 100644 --- a/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db2.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db2.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with second iterator from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -40,13 +42,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db3.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db3.pass.cpp index fad1464..848f3444 100644 --- a/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db3.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db3.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with both iterators from another container -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -40,13 +42,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db4.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db4.pass.cpp index 3186ad4..cb87f1f 100644 --- a/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db4.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db4.pass.cpp @@ -10,8 +10,10 @@ // Call erase(const_iterator first, const_iterator last); with a bad range -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) #include @@ -38,13 +40,3 @@ int main(int, char**) } #endif } - -#else - -int main(int, char**) -{ - - return 0; -} - -#endif diff --git a/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_pop_back_db1.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_pop_back_db1.pass.cpp index 2516a69..af93f57 100644 --- a/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_pop_back_db1.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.modifiers/erase_pop_back_db1.pass.cpp @@ -10,9 +10,11 @@ // void pop_back(); -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) -#endif #include #include @@ -21,13 +23,11 @@ int main(int, char**) { -#if _LIBCPP_DEBUG >= 1 { std::string s; s.pop_back(); assert(false); } -#endif - return 0; + return 0; } diff --git a/libcxx/test/libcxx/strings/basic.string/string.modifiers/insert_iter_char_db1.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.modifiers/insert_iter_char_db1.pass.cpp index eb07fe8..e581488 100644 --- a/libcxx/test/libcxx/strings/basic.string/string.modifiers/insert_iter_char_db1.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.modifiers/insert_iter_char_db1.pass.cpp @@ -10,9 +10,11 @@ // iterator insert(const_iterator p, charT c); -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) -#endif #include #include @@ -23,7 +25,6 @@ int main(int, char**) { -#if _LIBCPP_DEBUG >= 1 { typedef std::string S; S s; @@ -31,7 +32,6 @@ int main(int, char**) s.insert(s2.begin(), '1'); assert(false); } -#endif - return 0; + return 0; } diff --git a/libcxx/test/libcxx/strings/basic.string/string.modifiers/insert_iter_iter_iter_db1.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.modifiers/insert_iter_iter_iter_db1.pass.cpp new file mode 100644 index 0000000..5bbe146 --- /dev/null +++ b/libcxx/test/libcxx/strings/basic.string/string.modifiers/insert_iter_iter_iter_db1.pass.cpp @@ -0,0 +1,38 @@ +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +// + +// template +// iterator insert(const_iterator p, InputIterator first, InputIterator last); + +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 +#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) + +#include +#include + +#include "test_macros.h" + + +int main(int, char**) +{ + { + std::string v; + std::string v2; + char a[] = "123"; + const int N = sizeof(a)/sizeof(a[0]); + std::string::iterator i = v.insert(v2.cbegin() + 10, a, a+N); + assert(false); + } + + return 0; +} diff --git a/libcxx/test/libcxx/strings/basic.string/string.modifiers/insert_iter_size_char_db1.pass.cpp b/libcxx/test/libcxx/strings/basic.string/string.modifiers/insert_iter_size_char_db1.pass.cpp index 4db9760..2be5b08 100644 --- a/libcxx/test/libcxx/strings/basic.string/string.modifiers/insert_iter_size_char_db1.pass.cpp +++ b/libcxx/test/libcxx/strings/basic.string/string.modifiers/insert_iter_size_char_db1.pass.cpp @@ -10,9 +10,11 @@ // iterator insert(const_iterator p, size_type n, charT c); -#if _LIBCPP_DEBUG >= 1 +// This test requires debug mode, which the library on macOS doesn't have. +// UNSUPPORTED: with_system_cxx_lib=macosx + +#define _LIBCPP_DEBUG 1 #define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) -#endif #include #include @@ -21,14 +23,12 @@ int main(int, char**) { -#if _LIBCPP_DEBUG >= 1 { std::string s; std::string s2; s.insert(s2.begin(), 1, 'a'); assert(false); } -#endif - return 0; + return 0; } diff --git a/libcxx/test/std/containers/unord/unord.map/bucket.pass.cpp b/libcxx/test/std/containers/unord/unord.map/bucket.pass.cpp index 47bc933..93c177a 100644 --- a/libcxx/test/std/containers/unord/unord.map/bucket.pass.cpp +++ b/libcxx/test/std/containers/unord/unord.map/bucket.pass.cpp @@ -14,10 +14,6 @@ // size_type bucket(const key_type& __k) const; -#ifdef _LIBCPP_DEBUG -#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) -#endif - #include #include #include @@ -66,14 +62,6 @@ int main(int, char**) LIBCPP_ASSERT(c.bucket(i) == i % bc); } #endif -#if _LIBCPP_DEBUG_LEVEL >= 1 - { - typedef std::unordered_map C; - C c; - (void) c.bucket(3); - assert(false); - } -#endif - return 0; + return 0; } diff --git a/libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/move.pass.cpp b/libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/move.pass.cpp index 1be50c4..6efaa63 100644 --- a/libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/move.pass.cpp +++ b/libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/move.pass.cpp @@ -165,17 +165,6 @@ int main(int, char**) assert(c0.empty()); } -#if _LIBCPP_DEBUG >= 1 - { - std::unordered_map s1 = {{1, 1}, {2, 2}, {3, 3}}; - std::unordered_map::iterator i = s1.begin(); - std::pair k = *i; - std::unordered_map s2 = std::move(s1); - assert(*i == k); - s2.erase(i); - assert(s2.size() == 2); - } -#endif - return 0; + return 0; } diff --git a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_hint_const_lvalue.pass.cpp b/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_hint_const_lvalue.pass.cpp index 10032c0..cf18daf 100644 --- a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_hint_const_lvalue.pass.cpp +++ b/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_hint_const_lvalue.pass.cpp @@ -14,10 +14,6 @@ // iterator insert(const_iterator p, const value_type& x); -#if _LIBCPP_DEBUG >= 1 -#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) -#endif - #include #include @@ -68,19 +64,6 @@ int main(int, char**) do_insert_hint_const_lvalue_test(); } #endif -#if _LIBCPP_DEBUG >= 1 - { - typedef std::unordered_map C; - typedef C::iterator R; - typedef C::value_type P; - C c; - C c2; - C::const_iterator e = c2.end(); - P v(3.5, 3); - R r = c.insert(e, v); - assert(false); - } -#endif - return 0; + return 0; } diff --git a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_hint_rvalue.pass.cpp b/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_hint_rvalue.pass.cpp index 013e5b3..48293d0 100644 --- a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_hint_rvalue.pass.cpp +++ b/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_hint_rvalue.pass.cpp @@ -18,10 +18,6 @@ // class = typename enable_if::value>::type> // iterator insert(const_iterator p, P&& x); -#if _LIBCPP_DEBUG >= 1 -#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) -#endif - #include #include @@ -162,18 +158,6 @@ int main(int, char**) assert(r->first == 5.5); assert(r->second == 4); } -#if _LIBCPP_DEBUG >= 1 - { - typedef std::unordered_map C; - typedef C::iterator R; - typedef C::value_type P; - C c; - C c2; - C::const_iterator e = c2.end(); - R r = c.insert(e, P(3.5, 3)); - assert(false); - } -#endif - return 0; + return 0; } diff --git a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/move.pass.cpp b/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/move.pass.cpp index 047f7e6..a0a707c 100644 --- a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/move.pass.cpp +++ b/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/move.pass.cpp @@ -202,17 +202,6 @@ int main(int, char**) assert(c0.empty()); } -#if _LIBCPP_DEBUG >= 1 - { - std::unordered_multimap s1 = {{1, 1}, {2, 2}, {3, 3}}; - std::unordered_multimap::iterator i = s1.begin(); - std::pair k = *i; - std::unordered_multimap s2 = std::move(s1); - assert(*i == k); - s2.erase(i); - assert(s2.size() == 2); - } -#endif - return 0; + return 0; } diff --git a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_const_lvalue.pass.cpp b/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_const_lvalue.pass.cpp index ee7b337..cb79ddf 100644 --- a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_const_lvalue.pass.cpp +++ b/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_const_lvalue.pass.cpp @@ -14,10 +14,6 @@ // iterator insert(const_iterator p, const value_type& x); -#if _LIBCPP_DEBUG >= 1 -#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) -#endif - #include #include @@ -67,19 +63,6 @@ int main(int, char**) do_insert_const_lvalue_test(); } #endif -#if _LIBCPP_DEBUG >= 1 - { - typedef std::unordered_multimap C; - typedef C::iterator R; - typedef C::value_type P; - C c; - C c2; - C::const_iterator e = c2.end(); - P v(3.5, 3); - R r = c.insert(e, v); - assert(false); - } -#endif - return 0; + return 0; } diff --git a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp b/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp index d5d472f..6fa3b45 100644 --- a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp +++ b/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp @@ -18,10 +18,6 @@ // class = typename enable_if::value>::type> // iterator insert(const_iterator p, P&& x); -#if _LIBCPP_DEBUG >= 1 -#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) -#endif - #include #include @@ -162,18 +158,6 @@ int main(int, char**) assert(r->first == 5.5); assert(r->second == 4); } -#if _LIBCPP_DEBUG >= 1 - { - typedef std::unordered_multimap C; - typedef C::iterator R; - typedef C::value_type P; - C c; - C c2; - C::const_iterator e = c2.end(); - R r = c.insert(e, P(3.5, 3)); - assert(false); - } -#endif - return 0; + return 0; } diff --git a/libcxx/test/std/containers/unord/unord.multiset/insert_hint_const_lvalue.pass.cpp b/libcxx/test/std/containers/unord/unord.multiset/insert_hint_const_lvalue.pass.cpp index 981481b..461428e 100644 --- a/libcxx/test/std/containers/unord/unord.multiset/insert_hint_const_lvalue.pass.cpp +++ b/libcxx/test/std/containers/unord/unord.multiset/insert_hint_const_lvalue.pass.cpp @@ -14,10 +14,6 @@ // iterator insert(const_iterator p, const value_type& x); -#if _LIBCPP_DEBUG >= 1 -#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) -#endif - #include #include @@ -62,19 +58,6 @@ int main(int, char**) do_insert_hint_const_lvalue_test(); } #endif -#if _LIBCPP_DEBUG >= 1 - { - typedef std::unordered_multiset C; - typedef C::iterator R; - typedef C::value_type P; - C c; - C c2; - C::const_iterator e = c2.end(); - P v(3.5); - R r = c.insert(e, v); - assert(false); - } -#endif - return 0; + return 0; } diff --git a/libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/move.pass.cpp b/libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/move.pass.cpp index e480c7d..fbb4f5f 100644 --- a/libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/move.pass.cpp +++ b/libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/move.pass.cpp @@ -160,17 +160,6 @@ int main(int, char**) assert(c0.empty()); } -#if _LIBCPP_DEBUG >= 1 - { - std::unordered_multiset s1 = {1, 2, 3}; - std::unordered_multiset::iterator i = s1.begin(); - int k = *i; - std::unordered_multiset s2 = std::move(s1); - assert(*i == k); - s2.erase(i); - assert(s2.size() == 2); - } -#endif - return 0; + return 0; } diff --git a/libcxx/test/std/containers/unord/unord.set/insert_hint_const_lvalue.pass.cpp b/libcxx/test/std/containers/unord/unord.set/insert_hint_const_lvalue.pass.cpp index 0f7c881..0532b68 100644 --- a/libcxx/test/std/containers/unord/unord.set/insert_hint_const_lvalue.pass.cpp +++ b/libcxx/test/std/containers/unord/unord.set/insert_hint_const_lvalue.pass.cpp @@ -14,10 +14,6 @@ // iterator insert(const_iterator p, const value_type& x); -#if _LIBCPP_DEBUG >= 1 -#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) -#endif - #include #include @@ -62,19 +58,6 @@ int main(int, char**) do_insert_hint_const_lvalue_test(); } #endif -#if _LIBCPP_DEBUG >= 1 - { - typedef std::unordered_set C; - typedef C::iterator R; - typedef C::value_type P; - C c; - C c2; - C::const_iterator e = c2.end(); - P v(3.5); - R r = c.insert(e, v); - assert(false); - } -#endif - return 0; + return 0; } diff --git a/libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/move.pass.cpp b/libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/move.pass.cpp index 8e06551..2fc64ed 100644 --- a/libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/move.pass.cpp +++ b/libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/move.pass.cpp @@ -160,17 +160,6 @@ int main(int, char**) assert(c0.empty()); } -#if _LIBCPP_DEBUG >= 1 - { - std::unordered_set s1 = {1, 2, 3}; - std::unordered_set::iterator i = s1.begin(); - int k = *i; - std::unordered_set s2 = std::move(s1); - assert(*i == k); - s2.erase(i); - assert(s2.size() == 2); - } -#endif - return 0; + return 0; } diff --git a/libcxx/test/std/strings/basic.string/string.modifiers/string_insert/iter_iter_iter.pass.cpp b/libcxx/test/std/strings/basic.string/string.modifiers/string_insert/iter_iter_iter.pass.cpp index d52a579..67ba33d 100644 --- a/libcxx/test/std/strings/basic.string/string.modifiers/string_insert/iter_iter_iter.pass.cpp +++ b/libcxx/test/std/strings/basic.string/string.modifiers/string_insert/iter_iter_iter.pass.cpp @@ -11,10 +11,6 @@ // template // iterator insert(const_iterator p, InputIterator first, InputIterator last); -#if _LIBCPP_DEBUG >= 1 -#define _LIBCPP_ASSERT(x, m) ((x) ? (void)0 : std::exit(0)) -#endif - #include #include @@ -159,16 +155,6 @@ int main(int, char**) test_exceptions(S(), 0, TIter(s, s+10, 6, TIter::TAComparison), TIter()); } #endif -#if _LIBCPP_DEBUG >= 1 - { - std::string v; - std::string v2; - char a[] = "123"; - const int N = sizeof(a)/sizeof(a[0]); - std::string::iterator i = v.insert(v2.cbegin() + 10, a, a+N); - assert(false); - } -#endif { // test inserting into self typedef std::string S; -- 2.7.4