[libc++] Mark tests that use check_assertion.h as requiring unix headers
authorJohn Brawn <john.brawn@arm.com>
Fri, 6 May 2022 09:43:06 +0000 (10:43 +0100)
committerJohn Brawn <john.brawn@arm.com>
Fri, 6 May 2022 09:59:42 +0000 (10:59 +0100)
On targets without unistd.h or sys/wait.h (such as bare metal targets)
any test that uses check_assertion.h will fail, so add
REQUIRES: has-unix-headers to them and autodetect whether we have
these headers or not.

These tests currently have unsupported on windows, but that's exactly
because windows doesn't have these headers so we can remove the
specific check for windows.

Differential Revision: https://reviews.llvm.org/D124623

119 files changed:
libcxx/test/libcxx/algorithms/alg.sorting/assert.min.max.pass.cpp
libcxx/test/libcxx/algorithms/debug_less.inconsistent.pass.cpp
libcxx/test/libcxx/algorithms/debug_less.pass.cpp
libcxx/test/libcxx/containers/sequences/array/array.zero/assert.back.pass.cpp
libcxx/test/libcxx/containers/sequences/array/array.zero/assert.front.pass.cpp
libcxx/test/libcxx/containers/sequences/array/array.zero/assert.subscript.pass.cpp
libcxx/test/libcxx/containers/sequences/deque/assert.pop_back.empty.pass.cpp
libcxx/test/libcxx/containers/sequences/list/list.cons/debug.copy.pass.cpp
libcxx/test/libcxx/containers/sequences/list/list.modifiers/assert.erase_iter.end.pass.cpp
libcxx/test/libcxx/containers/sequences/list/list.modifiers/assert.pop_back.empty.pass.cpp
libcxx/test/libcxx/containers/sequences/list/list.modifiers/debug.emplace.pass.cpp
libcxx/test/libcxx/containers/sequences/list/list.modifiers/debug.erase.iter.pass.cpp
libcxx/test/libcxx/containers/sequences/list/list.modifiers/debug.erase.iter_iter.pass.cpp
libcxx/test/libcxx/containers/sequences/list/list.modifiers/debug.insert.iter_iter_iter.pass.cpp
libcxx/test/libcxx/containers/sequences/list/list.modifiers/debug.insert.iter_rvalue.pass.cpp
libcxx/test/libcxx/containers/sequences/list/list.modifiers/debug.insert.iter_size_value.pass.cpp
libcxx/test/libcxx/containers/sequences/list/list.modifiers/debug.insert.iter_value.pass.cpp
libcxx/test/libcxx/containers/sequences/list/list.ops/debug.splice.pos_list.pass.cpp
libcxx/test/libcxx/containers/sequences/list/list.ops/debug.splice.pos_list_iter.pass.cpp
libcxx/test/libcxx/containers/sequences/list/list.ops/debug.splice.pos_list_iter_iter.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/assert.back.empty.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/assert.cback.empty.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/assert.cfront.empty.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/assert.cindex.oob.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/assert.front.empty.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/assert.index.oob.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/assert.pop_back.empty.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/debug.iterator.add.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/debug.iterator.compare.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/debug.iterator.decrement.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/debug.iterator.dereference.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/debug.iterator.increment.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/debug.iterator.index.pass.cpp
libcxx/test/libcxx/containers/sequences/vector/debug.iterator.subtract.pass.cpp
libcxx/test/libcxx/containers/unord/unord.map/assert.bucket.pass.cpp
libcxx/test/libcxx/containers/unord/unord.map/assert.bucket_size.pass.cpp
libcxx/test/libcxx/containers/unord/unord.map/assert.max_load_factor.pass.cpp
libcxx/test/libcxx/containers/unord/unord.map/debug.insert.hint_const_lvalue.pass.cpp
libcxx/test/libcxx/containers/unord/unord.map/debug.insert.hint_rvalue.pass.cpp
libcxx/test/libcxx/containers/unord/unord.map/debug.iterator.dereference.pass.cpp
libcxx/test/libcxx/containers/unord/unord.map/debug.iterator.increment.pass.cpp
libcxx/test/libcxx/containers/unord/unord.map/debug.local_iterator.dereference.pass.cpp
libcxx/test/libcxx/containers/unord/unord.map/debug.local_iterator.increment.pass.cpp
libcxx/test/libcxx/containers/unord/unord.map/debug.swap.pass.cpp
libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/debug.erase.iter.pass.cpp
libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/debug.erase.iter_iter.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multimap/assert.bucket.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multimap/assert.bucket_size.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multimap/assert.max_load_factor.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multimap/debug.insert.hint_const_lvalue.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multimap/debug.insert.hint_rvalue.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multimap/debug.iterator.dereference.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multimap/debug.iterator.increment.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multimap/debug.local_iterator.dereference.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multimap/debug.local_iterator.increment.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multimap/debug.swap.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/debug.erase.iter.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/debug.erase.iter_iter.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multiset/assert.bucket.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multiset/assert.bucket_size.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multiset/assert.max_load_factor.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multiset/debug.erase.iter.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multiset/debug.erase.iter_iter.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multiset/debug.insert.hint_const_lvalue.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multiset/debug.iterator.dereference.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multiset/debug.iterator.increment.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multiset/debug.local_iterator.dereference.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multiset/debug.local_iterator.increment.pass.cpp
libcxx/test/libcxx/containers/unord/unord.multiset/debug.swap.pass.cpp
libcxx/test/libcxx/containers/unord/unord.set/assert.bucket.pass.cpp
libcxx/test/libcxx/containers/unord/unord.set/assert.bucket_size.pass.cpp
libcxx/test/libcxx/containers/unord/unord.set/assert.max_load_factor.pass.cpp
libcxx/test/libcxx/containers/unord/unord.set/debug.erase.iter.pass.cpp
libcxx/test/libcxx/containers/unord/unord.set/debug.erase.iter_iter.pass.cpp
libcxx/test/libcxx/containers/unord/unord.set/debug.insert.hint_const_lvalue.pass.cpp
libcxx/test/libcxx/containers/unord/unord.set/debug.iterator.dereference.pass.cpp
libcxx/test/libcxx/containers/unord/unord.set/debug.iterator.increment.pass.cpp
libcxx/test/libcxx/containers/unord/unord.set/debug.local_iterator.dereference.pass.cpp
libcxx/test/libcxx/containers/unord/unord.set/debug.local_iterator.increment.pass.cpp
libcxx/test/libcxx/containers/unord/unord.set/debug.swap.pass.cpp
libcxx/test/libcxx/debug/containers/associative_containers.pass.cpp
libcxx/test/libcxx/debug/containers/sequence_container_iterators.pass.cpp
libcxx/test/libcxx/debug/containers/string.pass.cpp
libcxx/test/libcxx/debug/containers/unord_containers.pass.cpp
libcxx/test/libcxx/experimental/memory/memory.polymorphic.allocator.class/memory.polymorphic.allocator.mem/assert.deallocate.pass.cpp
libcxx/test/libcxx/experimental/memory/memory.resource.adaptor/memory.resource.adaptor.mem/assert.deallocate.pass.cpp
libcxx/test/libcxx/input.output/filesystems/class.path/path.itr/assert.iterator.pass.cpp
libcxx/test/libcxx/iterators/assert.advance.pass.cpp
libcxx/test/libcxx/iterators/assert.next.pass.cpp
libcxx/test/libcxx/iterators/assert.prev.pass.cpp
libcxx/test/libcxx/ranges/range.adaptors/range.lazy.split/range.lazy.split.inner/assert.equal.pass.cpp
libcxx/test/libcxx/ranges/range.adaptors/range.lazy.split/range.lazy.split.outer/assert.equal.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.access/assert.back.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.access/assert.cback.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.access/assert.cfront.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.access/assert.cindex.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.access/assert.front.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.access/assert.index.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.iterators/debug.iterator.add.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.iterators/debug.iterator.compare.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.iterators/debug.iterator.decrement.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.iterators/debug.iterator.dereference.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.iterators/debug.iterator.increment.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.iterators/debug.iterator.index.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.iterators/debug.iterator.subtract.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.modifiers/assert.erase_iter.null.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.modifiers/assert.pop_back.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.modifiers/debug.erase.iter.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.modifiers/debug.erase.iter_iter.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.modifiers/debug.insert.iter_char.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.modifiers/debug.insert.iter_iter_iter.pass.cpp
libcxx/test/libcxx/strings/basic.string/string.modifiers/debug.insert.iter_size_char.pass.cpp
libcxx/test/libcxx/strings/string.view/assert.ctor.pointer.pass.cpp
libcxx/test/libcxx/thread/futures/futures.promise/assert.set_exception.pass.cpp
libcxx/test/libcxx/thread/futures/futures.promise/assert.set_exception_at_thread_exit.pass.cpp
libcxx/test/libcxx/utilities/optional/optional.object/optional.object.observe/assert.dereference.pass.cpp
libcxx/test/libcxx/utilities/optional/optional.object/optional.object.observe/assert.op_arrow.pass.cpp
libcxx/test/support/test.support/test_check_assertion.pass.cpp
libcxx/utils/libcxx/test/features.py

index 2a3db76..17b1433 100644 (file)
@@ -8,9 +8,8 @@
 
 // <algorithm>
 
-// UNSUPPORTED: c++03, c++11, c++14, c++17
-// UNSUPPORTED: libcpp-has-no-incomplete-ranges
-// UNSUPPORTED: windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03, c++11, c++14, c++17, libcpp-has-no-incomplete-ranges
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
 #include <algorithm>
index 2359c4d..6d1e96a 100644 (file)
@@ -12,7 +12,8 @@
 
 // Make sure __debug_less asserts when the comparator is not consistent.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <algorithm>
index 75356e6..05ba0f1 100644 (file)
@@ -12,7 +12,8 @@
 
 // __debug_less checks that a comparator actually provides a strict-weak ordering.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <algorithm>
index 2fbf5b2..5fd6204 100644 (file)
@@ -6,7 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index c92c3b0..4952713 100644 (file)
@@ -6,7 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index f7ba5f0..1bd7582 100644 (file)
@@ -6,7 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 27dc96f..9cbe7c5 100644 (file)
@@ -10,7 +10,8 @@
 
 // pop_back() more than the number of elements in a deque
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 2d464a1..518d44d 100644 (file)
@@ -10,7 +10,8 @@
 
 // list(list&& c);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <list>
index 438cc1e..4d02547 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call erase(const_iterator position) with end()
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index b9217c7..1a823b2 100644 (file)
@@ -10,7 +10,8 @@
 
 // void pop_back();
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 18f9565..ab2b257 100644 (file)
@@ -10,7 +10,8 @@
 
 // template <class... Args> void emplace(const_iterator p, Args&&... args);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <list>
index bd10a17..843dcff 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call erase(const_iterator position) with iterator from another container
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <list>
index ea8995d..583dfa1 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call erase(const_iterator first, const_iterator last); with various invalid iterators
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <list>
index 45e87df..218a964 100644 (file)
@@ -11,7 +11,8 @@
 // template <InputIterator Iter>
 //   iterator insert(const_iterator position, Iter first, Iter last);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <list>
index ebfd307..880cbcf 100644 (file)
@@ -10,7 +10,8 @@
 
 // iterator insert(const_iterator position, value_type&& x);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <list>
index 6a9ea70..bc791b9 100644 (file)
@@ -10,7 +10,8 @@
 
 // iterator insert(const_iterator position, size_type n, const value_type& x);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <list>
index 04cc722..363c5c1 100644 (file)
@@ -10,7 +10,8 @@
 
 // iterator insert(const_iterator position, const value_type& x);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <list>
index 812c7ee..0ced467 100644 (file)
@@ -10,7 +10,8 @@
 
 // void splice(const_iterator position, list& x);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <list>
index 9b7d0a9..c9163a4 100644 (file)
@@ -10,7 +10,8 @@
 
 // void splice(const_iterator position, list<T,Allocator>& x, iterator i);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <list>
index 65a48c5..1f7a523 100644 (file)
@@ -10,7 +10,8 @@
 
 // void splice(const_iterator position, list& x, iterator first, iterator last);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <list>
index ec25e5c..b2956a6 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call back() on empty container.
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 5bb3061..14c3800 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call back() on empty const container.
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index f47e4a0..ee7e36e 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call front() on empty const container.
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 881ef7f..cba6479 100644 (file)
@@ -10,7 +10,8 @@
 
 // Index const vector out of bounds.
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 1267d4d..95a8160 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call front() on empty container.
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index c4492d5..3192768 100644 (file)
@@ -10,7 +10,8 @@
 
 // Index vector out of bounds.
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 72bbbe2..8d4099f 100644 (file)
@@ -10,7 +10,8 @@
 
 // pop_back() more than the number of elements in a vector
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 5b10424..929be18 100644 (file)
@@ -10,7 +10,8 @@
 
 // Add to iterator out of bounds.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <vector>
index 08042bc..b59f095 100644 (file)
@@ -10,7 +10,8 @@
 
 // Compare iterators from different containers with <.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <vector>
index 2e50c31..f847764 100644 (file)
@@ -10,7 +10,8 @@
 
 // Decrement iterator prior to begin.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <vector>
index 40c68f9..203656f 100644 (file)
@@ -10,7 +10,8 @@
 
 // Dereference non-dereferenceable iterator.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <vector>
index 3826ca5..b950aa2 100644 (file)
@@ -10,7 +10,8 @@
 
 // Increment iterator past end.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <vector>
index 918417f..409002d 100644 (file)
@@ -10,7 +10,8 @@
 
 // Index iterator out of bounds.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <vector>
index 4357879..5378de0 100644 (file)
@@ -10,7 +10,8 @@
 
 // Subtract iterators from different containers.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <vector>
index d56667a..4406fa8 100644 (file)
@@ -10,7 +10,8 @@
 
 // size_type bucket(const key_type& __k) const;
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index ddaf4a8..858ed1c 100644 (file)
@@ -14,7 +14,8 @@
 
 // size_type bucket_size(size_type n) const
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index af29a71..b4505f9 100644 (file)
@@ -15,7 +15,8 @@
 // float max_load_factor() const;
 // void max_load_factor(float mlf);
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index fe0e356..8317c9f 100644 (file)
@@ -10,7 +10,8 @@
 
 // iterator insert(const_iterator p, const value_type& x);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_map>
index 27ab809..af78854 100644 (file)
@@ -12,7 +12,8 @@
 //           class = typename enable_if<is_convertible<P, value_type>::value>::type>
 //     iterator insert(const_iterator p, P&& x);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_map>
index 5cae9d3..3427758 100644 (file)
@@ -10,7 +10,8 @@
 
 // Dereference non-dereferenceable iterator.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_map>
index bb07d6f..91e6f7e 100644 (file)
@@ -10,7 +10,8 @@
 
 // Increment iterator past end.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_map>
index d30e610..c38082c 100644 (file)
@@ -10,7 +10,8 @@
 
 // Dereference non-dereferenceable iterator.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_map>
index dcfe2cf..15dfca6 100644 (file)
@@ -10,7 +10,8 @@
 
 // Increment local_iterator past end.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_map>
index b1b8192..012b545 100644 (file)
@@ -14,7 +14,8 @@
 
 // void swap(unordered_map& x, unordered_map& y);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_map>
index 09a27bb..3a9318f 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call erase(const_iterator position) with invalid iterators
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_map>
index d8c6b71..f5f3e6b 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call erase(const_iterator first, const_iterator last); with invalid iterators
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_map>
index a2e9e26..0c2f12a 100644 (file)
@@ -14,7 +14,8 @@
 
 // size_type bucket(const key_type& __k) const;
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 870aecf..9c27d58 100644 (file)
@@ -14,7 +14,8 @@
 
 // size_type bucket_size(size_type n) const
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 153121f..42bd462 100644 (file)
@@ -15,7 +15,8 @@
 // float max_load_factor() const;
 // void max_load_factor(float mlf);
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 1d5d259..1ba4b30 100644 (file)
@@ -10,7 +10,8 @@
 
 // iterator insert(const_iterator p, const value_type& x);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_map>
index b968d38..3895c4e 100644 (file)
@@ -12,7 +12,8 @@
 //           class = typename enable_if<is_convertible<P, value_type>::value>::type>
 //     iterator insert(const_iterator p, P&& x);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_map>
index 68b873a..b5a869d 100644 (file)
@@ -10,7 +10,8 @@
 
 // Dereference non-dereferenceable iterator.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <string>
index 139e733..bd8a5af 100644 (file)
@@ -10,7 +10,8 @@
 
 // Increment iterator past end.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_map>
index 0f6cc20..bf8ebc9 100644 (file)
@@ -10,7 +10,8 @@
 
 // Dereference non-dereferenceable iterator.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_map>
index 2acdefb..2df1eb2 100644 (file)
@@ -10,7 +10,8 @@
 
 // Increment local_iterator past end.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_map>
index 936ba02..2ea1946 100644 (file)
@@ -14,7 +14,8 @@
 
 // void swap(unordered_multimap& x, unordered_multimap& y);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_map>
index 17518d3..31d9616 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call erase(const_iterator position) with invalid iterators
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_map>
index f07d2db..89142fa 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call erase(const_iterator first, const_iterator last); with invalid iterators
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_map>
index 28e41fe..37d43fb 100644 (file)
@@ -14,7 +14,8 @@
 
 // size_type bucket(const key_type& __k) const;
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 8763d06..c8e7523 100644 (file)
@@ -14,7 +14,8 @@
 
 // size_type bucket_size(size_type n) const
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index c049f01..1b5aaa4 100644 (file)
@@ -15,7 +15,8 @@
 // float max_load_factor() const;
 // void max_load_factor(float mlf);
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index bdae4da..190d085 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call erase(const_iterator position) with invalid iterators
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_set>
index bb9ee05..921bc16 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call erase(const_iterator first, const_iterator last); with invalid iterators
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_set>
index d70494a..7337f02 100644 (file)
@@ -10,7 +10,8 @@
 
 // iterator insert(const_iterator p, const value_type& x);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_set>
index 0d747d5..0557e50 100644 (file)
@@ -10,7 +10,8 @@
 
 // Dereference non-dereferenceable iterator.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_set>
index aa10eb1..a1e6d9a 100644 (file)
@@ -10,7 +10,8 @@
 
 // Increment iterator past end.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_set>
index b74488a..efe486a 100644 (file)
@@ -10,7 +10,8 @@
 
 // Dereference non-dereferenceable iterator.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_set>
index a2456ff..6e2df71 100644 (file)
@@ -10,7 +10,8 @@
 
 // Increment local_iterator past end.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_set>
index 68c8bbc..c66b460 100644 (file)
@@ -14,7 +14,8 @@
 
 // void swap(unordered_multiset& x, unordered_multiset& y);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_set>
index f6562a0..5634ffd 100644 (file)
@@ -14,7 +14,8 @@
 
 // size_type bucket(const key_type& __k) const;
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 7ecfb6f..dd3ad22 100644 (file)
@@ -14,7 +14,8 @@
 
 // size_type bucket_size(size_type n) const
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index c677bcf..385e627 100644 (file)
@@ -15,7 +15,8 @@
 // float max_load_factor() const;
 // void max_load_factor(float mlf);
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 7e8d7e5..6bae742 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call erase(const_iterator position) with invalid iterators
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_set>
index 1d8a5eb..0fa5d7b 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call erase(const_iterator first, const_iterator last); with first iterator from another container
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_set>
index 2fe2580..ef44883 100644 (file)
@@ -10,7 +10,8 @@
 
 // iterator insert(const_iterator p, const value_type& x);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_set>
index c7f1bc6..64011f5 100644 (file)
@@ -10,7 +10,8 @@
 
 // Dereference non-dereferenceable iterator.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_set>
index 9466130..e8da843 100644 (file)
@@ -10,7 +10,8 @@
 
 // Increment iterator past end.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_set>
index 4df9f6c..5043a89 100644 (file)
@@ -10,7 +10,8 @@
 
 // Dereference non-dereferenceable iterator.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_set>
index aa48b31..e1042d3 100644 (file)
@@ -10,7 +10,8 @@
 
 // Increment local_iterator past end.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_set>
index a0ef6a1..4d72199 100644 (file)
@@ -14,7 +14,8 @@
 
 // void swap(unordered_set& x, unordered_set& y);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <unordered_set>
index c5f8285..8a07efe 100644 (file)
@@ -6,9 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-// UNSUPPORTED: c++11, c++14
-
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03, c++11, c++14
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 // test container debugging
index a9692af..e98c18b 100644 (file)
@@ -6,9 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-// UNSUPPORTED: c++11, c++14
-
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03, c++11, c++14
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 // test container debugging
index 56aa96f..ba54643 100644 (file)
@@ -6,9 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-// UNSUPPORTED: c++11, c++14
-
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03, c++11, c++14
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 // test container debugging
index 9831c84..70a6e92 100644 (file)
@@ -6,9 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-// UNSUPPORTED: c++11, c++14
-
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03, c++11, c++14
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 // test container debugging
index 6fde6e9..396cab3 100644 (file)
@@ -12,7 +12,8 @@
 
 // T* polymorphic_allocator<T>::deallocate(T*, size_t size)
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index e0e8620..7c89428 100644 (file)
@@ -12,7 +12,8 @@
 
 // T* polymorphic_allocator<T>::deallocate(T*, size_t size)
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 5e1049e..9dc863d 100644 (file)
@@ -6,7 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index d405944..3fb2dcd 100644 (file)
@@ -6,7 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index bfda1d1..6a5328e 100644 (file)
@@ -6,7 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index f01c5da..5e5723c 100644 (file)
@@ -6,7 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 41d1077..f1f81c6 100644 (file)
@@ -6,8 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-// UNSUPPORTED: c++03, c++11, c++14, c++17, windows, libcxx-no-debug-mode
-// UNSUPPORTED: libcpp-has-no-incomplete-ranges
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03, c++11, c++14, c++17, libcxx-no-debug-mode, libcpp-has-no-incomplete-ranges
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
 // <ranges>
index 3db4060..4907d3c 100644 (file)
@@ -6,8 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-// UNSUPPORTED: c++03, c++11, c++14, c++17, windows, libcxx-no-debug-mode
-// UNSUPPORTED: libcpp-has-no-incomplete-ranges
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03, c++11, c++14, c++17, libcxx-no-debug-mode, libcpp-has-no-incomplete-ranges
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
 // <ranges>
index a3671d8..f2d961e 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call back() on empty container.
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 61bb1fd..b2f0475 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call back() on empty const container.
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index d0c2da2..3de1b84 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call front() on empty const container.
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 4bf3380..74d0e4f 100644 (file)
@@ -10,7 +10,8 @@
 
 // Index const string out of bounds.
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 5221603..d2d9134 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call front() on empty container.
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 0c382ba..218ab0e 100644 (file)
@@ -10,7 +10,8 @@
 
 // Index string out of bounds.
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 72bbb6a..53c1613 100644 (file)
@@ -10,7 +10,8 @@
 
 // Add to iterator out of bounds.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <string>
index 9c75527..c34e3fd 100644 (file)
@@ -10,7 +10,8 @@
 
 // Compare iterators from different containers with <.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <string>
index 188367f..b36bbff 100644 (file)
@@ -10,7 +10,8 @@
 
 // Decrement iterator prior to begin.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <string>
index fdedbb6..6a9e7d6 100644 (file)
@@ -10,7 +10,8 @@
 
 // Dereference non-dereferenceable iterator.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <string>
index bf4eff7..96f6002 100644 (file)
@@ -10,7 +10,8 @@
 
 // Increment iterator past end.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <string>
index 742b4c9..9528f51 100644 (file)
@@ -10,7 +10,8 @@
 
 // Index iterator out of bounds.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <string>
index d967071..4cf6bcc 100644 (file)
@@ -10,7 +10,8 @@
 
 // Subtract iterators from different containers.
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <string>
index 8892cbe..f22caff 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call erase(const_iterator position) with end()
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 56baa76..286e348 100644 (file)
@@ -10,7 +10,8 @@
 
 // void pop_back();
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 739a94c..07b2537 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call erase(const_iterator position) with an iterator from another container
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <string>
index 2d55d60..0606f12 100644 (file)
@@ -10,7 +10,8 @@
 
 // Call erase(const_iterator first, const_iterator last); with invalid iterators
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <string>
index a1463bf..4decaa4 100644 (file)
@@ -10,7 +10,8 @@
 
 // iterator insert(const_iterator p, charT c);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 // TODO: Since string::insert(iter, char) is intantiated in the dylib, this test doesn't
index 3eeb1a3..a95fa8c 100644 (file)
@@ -11,7 +11,8 @@
 // template<class InputIterator>
 //   iterator insert(const_iterator p, InputIterator first, InputIterator last);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <string>
index 55a44ba..d251dfc 100644 (file)
@@ -10,7 +10,8 @@
 
 // iterator insert(const_iterator p, size_type n, charT c);
 
-// UNSUPPORTED: libcxx-no-debug-mode, c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: libcxx-no-debug-mode, c++03
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DEBUG=1
 
 #include <string>
index 6efd996..f674cfa 100644 (file)
@@ -6,9 +6,10 @@
 //
 //===----------------------------------------------------------------------===//
 
+// REQUIRES: has-unix-headers
 // UNSUPPORTED: c++11, c++14
 
-// UNSUPPORTED: c++03, windows
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index fb9bc8e..ac02569 100644 (file)
@@ -6,9 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-// UNSUPPORTED: libcpp-has-no-threads
-
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03, libcpp-has-no-threads
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 6701854..7e098c0 100644 (file)
@@ -6,9 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-// UNSUPPORTED: libcpp-has-no-threads
-
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03, libcpp-has-no-threads
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 3729101..068b2e7 100644 (file)
@@ -13,9 +13,8 @@
 // constexpr const T& optional<T>::operator*() const &;
 // constexpr T&& optional<T>::operator*() const &&;
 
-// UNSUPPORTED: c++11, c++14
-
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03, c++11, c++14
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index b047fd6..dc3eda8 100644 (file)
@@ -11,9 +11,8 @@
 // constexpr T* optional<T>::operator->();
 // constexpr const T* optional<T>::operator->() const;
 
-// UNSUPPORTED: c++11, c++14
-
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03, c++11, c++14
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 71b4db0..cd09445 100644 (file)
@@ -6,7 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-// UNSUPPORTED: c++03, windows
+// REQUIRES: has-unix-headers
+// UNSUPPORTED: c++03
 // XFAIL: use_system_cxx_lib && target={{.+}}-apple-macosx{{10.9|10.10|10.11|10.12|10.13|10.14|10.15|11.0|12.0}}
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_ENABLE_ASSERTIONS=1
 
index 8b2b218..180949e 100644 (file)
@@ -116,6 +116,15 @@ DEFAULT_FEATURES = [
             }
           """)),
 
+  Feature(name='has-unix-headers',
+          when=lambda cfg: sourceBuilds(cfg, """
+            #include <unistd.h>
+            #include <sys/wait.h>
+            int main(int, char**) {
+              return 0;
+            }
+          """)),
+
   # Whether Bash can run on the executor.
   # This is not always the case, for example when running on embedded systems.
   #