summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std/language.support
diff options
context:
space:
mode:
Diffstat (limited to 'libcxx/test/std/language.support')
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/any.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/array.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/atomic.version.pass.cpp14
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/bit.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/charconv.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/chrono.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/cmath.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/complex.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/concepts.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/cstddef.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/deque.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/exception.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/execution.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/filesystem.version.pass.cpp14
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/forward_list.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.pass.cpp3
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/iomanip.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/istream.version.pass.cpp43
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/iterator.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/limits.version.pass.cpp43
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/list.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/locale.version.pass.cpp43
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/map.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/memory.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/memory_resource.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/mutex.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/new.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/numeric.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/optional.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/ostream.version.pass.cpp43
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/regex.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/scoped_allocator.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/set.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/shared_mutex.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/string.version.pass.cpp12
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/string_view.version.pass.cpp12
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.pass.cpp3
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/unordered_map.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/unordered_set.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/variant.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/vector.version.pass.cpp1
-rw-r--r--libcxx/test/std/language.support/support.limits/support.limits.general/version.version.pass.cpp19
45 files changed, 275 insertions, 8 deletions
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.pass.cpp
index 37a636f3239..24d2f8002d6 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.pass.cpp
@@ -20,6 +20,7 @@
*/
#include <algorithm>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/any.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/any.version.pass.cpp
index 951afbc0877..933730442e0 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/any.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/any.version.pass.cpp
@@ -16,6 +16,7 @@
*/
#include <any>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/array.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/array.version.pass.cpp
index 548abe6480c..5d25c628b31 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/array.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/array.version.pass.cpp
@@ -17,6 +17,7 @@
*/
#include <array>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/atomic.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/atomic.version.pass.cpp
index 0c15dc5395d..a990cab9bdf 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/atomic.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/atomic.version.pass.cpp
@@ -11,6 +11,7 @@
// <atomic> feature macros
/* Constant Value
+ __cpp_lib_char8_t 201811L
__cpp_lib_atomic_is_always_lock_free 201603L
__cpp_lib_atomic_ref 201806L
@@ -19,13 +20,24 @@
// UNSUPPORTED: libcpp-has-no-threads
#include <atomic>
+#include <cassert>
#include "test_macros.h"
int main()
{
// ensure that the macros that are supposed to be defined in <atomic> are defined.
-#if _TEST_STD_VER > 14
+#if TEST_STD_VER > 17
+# if !defined(__cpp_lib_char8_t)
+ LIBCPP_STATIC_ASSERT(false, "__cpp_lib_char8_t is not defined");
+# else
+# if __cpp_lib_char8_t < 201811L
+# error "__cpp_lib_char8_t has an invalid value"
+# endif
+# endif
+#endif
+
+#if TEST_STD_VER > 14
# if !defined(__cpp_lib_atomic_is_always_lock_free)
# error "__cpp_lib_atomic_is_always_lock_free is not defined"
# elif __cpp_lib_atomic_is_always_lock_free < 201603L
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/bit.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/bit.version.pass.cpp
index 2dfe4a8b103..5dd7d049a5c 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/bit.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/bit.version.pass.cpp
@@ -16,6 +16,7 @@
*/
#include <bit>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/charconv.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/charconv.pass.cpp
index 26147fc5451..f1e252f8e86 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/charconv.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/charconv.pass.cpp
@@ -15,6 +15,7 @@
*/
#include <charconv>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/chrono.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/chrono.version.pass.cpp
index 9ec93f39ceb..1d0a79ec14e 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/chrono.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/chrono.version.pass.cpp
@@ -17,6 +17,7 @@
*/
#include <chrono>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/cmath.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/cmath.version.pass.cpp
index e8479d1c858..b5b0309f803 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/cmath.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/cmath.version.pass.cpp
@@ -17,6 +17,7 @@
*/
#include <cmath>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/complex.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/complex.version.pass.cpp
index dd64efb11bb..be25d793dbd 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/complex.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/complex.version.pass.cpp
@@ -16,6 +16,7 @@
*/
#include <complex>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/concepts.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/concepts.version.pass.cpp
index 06f244834bd..b212391227a 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/concepts.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/concepts.version.pass.cpp
@@ -17,6 +17,7 @@
// XFAIL
// #include <concepts>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/cstddef.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/cstddef.version.pass.cpp
index ac8dfbb0476..ad743b51e25 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/cstddef.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/cstddef.version.pass.cpp
@@ -16,6 +16,7 @@
*/
#include <cstddef>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/deque.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/deque.version.pass.cpp
index faa9063f4cb..d3ca7d9b02c 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/deque.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/deque.version.pass.cpp
@@ -17,6 +17,7 @@
*/
#include <deque>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/exception.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/exception.version.pass.cpp
index a77ce5f1c7d..3ea235bdbee 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/exception.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/exception.version.pass.cpp
@@ -16,6 +16,7 @@
*/
#include <exception>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/execution.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/execution.version.pass.cpp
index e81061eadac..2fcd44cd079 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/execution.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/execution.version.pass.cpp
@@ -17,6 +17,7 @@
// XFAIL
// #include <execution>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/filesystem.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/filesystem.version.pass.cpp
index 46ad17d75c1..160a997cecb 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/filesystem.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/filesystem.version.pass.cpp
@@ -11,18 +11,30 @@
// <filesystem> feature macros
/* Constant Value
+ __cpp_lib_char8_t 201811L
__cpp_lib_filesystem 201703L
*/
#include <filesystem>
+#include <cassert>
#include "test_macros.h"
int main()
{
// ensure that the macros that are supposed to be defined in <filesystem> are defined.
-#if _TEST_STD_VER > 14
+#if TEST_STD_VER > 17
+# if !defined(__cpp_lib_char8_t)
+ LIBCPP_STATIC_ASSERT(false, "__cpp_lib_char8_t is not defined");
+# else
+# if __cpp_lib_char8_t < 201811L
+# error "__cpp_lib_char8_t has an invalid value"
+# endif
+# endif
+#endif
+
+#if TEST_STD_VER > 14
# if !defined(__cpp_lib_filesystem)
# error "__cpp_lib_filesystem is not defined"
# elif __cpp_lib_filesystem < 201703L
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/forward_list.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/forward_list.version.pass.cpp
index b262d70dd95..73c8462ca3f 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/forward_list.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/forward_list.version.pass.cpp
@@ -19,6 +19,7 @@
*/
#include <forward_list>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.pass.cpp
index a24de49f3ae..57978cbb30c 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.pass.cpp
@@ -20,13 +20,14 @@
*/
#include <functional>
+#include <cassert>
#include "test_macros.h"
int main()
{
// ensure that the macros that are supposed to be defined in <functional> are defined.
-#if _TEST_STD_VER > 14
+#if TEST_STD_VER > 14
# if !defined(__cpp_lib_invoke)
# error "__cpp_lib_invoke is not defined"
# elif __cpp_lib_invoke < 201411L
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/iomanip.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/iomanip.version.pass.cpp
index 35ed34b5071..74ab48e3ca9 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/iomanip.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/iomanip.version.pass.cpp
@@ -16,6 +16,7 @@
*/
#include <iomanip>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/istream.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/istream.version.pass.cpp
new file mode 100644
index 00000000000..dfa0052e43f
--- /dev/null
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/istream.version.pass.cpp
@@ -0,0 +1,43 @@
+
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is dual licensed under the MIT and the University of Illinois Open
+// Source Licenses. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+// <istream> feature macros
+
+/* Constant Value
+ __cpp_lib_char8_t 201811L
+
+*/
+
+#include <istream>
+#include <cassert>
+#include "test_macros.h"
+
+int main()
+{
+// ensure that the macros that are supposed to be defined in <istream> are defined.
+
+#if TEST_STD_VER > 17
+# if !defined(__cpp_lib_char8_t)
+ LIBCPP_STATIC_ASSERT(false, "__cpp_lib_char8_t is not defined");
+# else
+# if __cpp_lib_char8_t < 201811L
+# error "__cpp_lib_char8_t has an invalid value"
+# endif
+# endif
+#endif
+
+/*
+#if !defined(__cpp_lib_fooby)
+# error "__cpp_lib_fooby is not defined"
+#elif __cpp_lib_fooby < 201606L
+# error "__cpp_lib_fooby has an invalid value"
+#endif
+*/
+}
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/iterator.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/iterator.version.pass.cpp
index 02e0286495d..50c582fd857 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/iterator.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/iterator.version.pass.cpp
@@ -19,6 +19,7 @@
*/
#include <iterator>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/limits.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/limits.version.pass.cpp
new file mode 100644
index 00000000000..5d4997153d7
--- /dev/null
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/limits.version.pass.cpp
@@ -0,0 +1,43 @@
+
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is dual licensed under the MIT and the University of Illinois Open
+// Source Licenses. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+// <limits> feature macros
+
+/* Constant Value
+ __cpp_lib_char8_t 201811L
+
+*/
+
+#include <limits>
+#include <cassert>
+#include "test_macros.h"
+
+int main()
+{
+// ensure that the macros that are supposed to be defined in <limits> are defined.
+
+#if TEST_STD_VER > 17
+# if !defined(__cpp_lib_char8_t)
+ LIBCPP_STATIC_ASSERT(false, "__cpp_lib_char8_t is not defined");
+# else
+# if __cpp_lib_char8_t < 201811L
+# error "__cpp_lib_char8_t has an invalid value"
+# endif
+# endif
+#endif
+
+/*
+#if !defined(__cpp_lib_fooby)
+# error "__cpp_lib_fooby is not defined"
+#elif __cpp_lib_fooby < 201606L
+# error "__cpp_lib_fooby has an invalid value"
+#endif
+*/
+}
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/list.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/list.version.pass.cpp
index ad666d152d5..3db7995633f 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/list.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/list.version.pass.cpp
@@ -19,6 +19,7 @@
*/
#include <list>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/locale.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/locale.version.pass.cpp
new file mode 100644
index 00000000000..4c45c0a5449
--- /dev/null
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/locale.version.pass.cpp
@@ -0,0 +1,43 @@
+
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is dual licensed under the MIT and the University of Illinois Open
+// Source Licenses. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+// <locale> feature macros
+
+/* Constant Value
+ __cpp_lib_char8_t 201811L
+
+*/
+
+#include <locale>
+#include <cassert>
+#include "test_macros.h"
+
+int main()
+{
+// ensure that the macros that are supposed to be defined in <locale> are defined.
+
+#if TEST_STD_VER > 17
+# if !defined(__cpp_lib_char8_t)
+ LIBCPP_STATIC_ASSERT(false, "__cpp_lib_char8_t is not defined");
+# else
+# if __cpp_lib_char8_t < 201811L
+# error "__cpp_lib_char8_t has an invalid value"
+# endif
+# endif
+#endif
+
+/*
+#if !defined(__cpp_lib_fooby)
+# error "__cpp_lib_fooby is not defined"
+#elif __cpp_lib_fooby < 201606L
+# error "__cpp_lib_fooby has an invalid value"
+#endif
+*/
+}
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/map.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/map.version.pass.cpp
index 933449ce5fa..ffcc003e3a0 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/map.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/map.version.pass.cpp
@@ -20,6 +20,7 @@
*/
#include <map>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/memory.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/memory.version.pass.cpp
index 5dbd6ab5f9b..4ffb7bd80dc 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/memory.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/memory.version.pass.cpp
@@ -23,6 +23,7 @@
*/
#include <memory>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/memory_resource.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/memory_resource.version.pass.cpp
index 30c27233b27..857ece26733 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/memory_resource.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/memory_resource.version.pass.cpp
@@ -17,6 +17,7 @@
// XFAIL
// #include <memory_resource>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/mutex.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/mutex.version.pass.cpp
index 1909b31a162..72209d9f46f 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/mutex.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/mutex.version.pass.cpp
@@ -16,6 +16,7 @@
*/
#include <mutex>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/new.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/new.version.pass.cpp
index 6daca346faf..856bd8b0135 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/new.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/new.version.pass.cpp
@@ -17,6 +17,7 @@
*/
#include <new>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/numeric.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/numeric.version.pass.cpp
index fbe100ba82a..61547621ee1 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/numeric.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/numeric.version.pass.cpp
@@ -17,6 +17,7 @@
*/
#include <numeric>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/optional.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/optional.version.pass.cpp
index b78eda6049f..b9795181aaa 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/optional.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/optional.version.pass.cpp
@@ -16,6 +16,7 @@
*/
#include <optional>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/ostream.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/ostream.version.pass.cpp
new file mode 100644
index 00000000000..5f2ffb29653
--- /dev/null
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/ostream.version.pass.cpp
@@ -0,0 +1,43 @@
+
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is dual licensed under the MIT and the University of Illinois Open
+// Source Licenses. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+// <ostream> feature macros
+
+/* Constant Value
+ __cpp_lib_char8_t 201811L
+
+*/
+
+#include <ostream>
+#include <cassert>
+#include "test_macros.h"
+
+int main()
+{
+// ensure that the macros that are supposed to be defined in <ostream> are defined.
+
+#if TEST_STD_VER > 17
+# if !defined(__cpp_lib_char8_t)
+ LIBCPP_STATIC_ASSERT(false, "__cpp_lib_char8_t is not defined");
+# else
+# if __cpp_lib_char8_t < 201811L
+# error "__cpp_lib_char8_t has an invalid value"
+# endif
+# endif
+#endif
+
+/*
+#if !defined(__cpp_lib_fooby)
+# error "__cpp_lib_fooby is not defined"
+#elif __cpp_lib_fooby < 201606L
+# error "__cpp_lib_fooby has an invalid value"
+#endif
+*/
+}
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/regex.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/regex.version.pass.cpp
index 91222ce64e2..fdc499328d9 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/regex.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/regex.version.pass.cpp
@@ -16,6 +16,7 @@
*/
#include <regex>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/scoped_allocator.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/scoped_allocator.version.pass.cpp
index c4306918624..84b2dbdb2c9 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/scoped_allocator.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/scoped_allocator.version.pass.cpp
@@ -16,6 +16,7 @@
*/
#include <scoped_allocator>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/set.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/set.version.pass.cpp
index dc414f0fd90..96918031d37 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/set.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/set.version.pass.cpp
@@ -19,6 +19,7 @@
*/
#include <set>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/shared_mutex.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/shared_mutex.version.pass.cpp
index d432e8beb24..33387e89067 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/shared_mutex.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/shared_mutex.version.pass.cpp
@@ -19,6 +19,7 @@
// UNSUPPORTED: libcpp-has-no-threads
#include <shared_mutex>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/string.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/string.version.pass.cpp
index 2b755b691ed..02aa15c77cc 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/string.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/string.version.pass.cpp
@@ -12,6 +12,7 @@
/* Constant Value
__cpp_lib_allocator_traits_is_always_equal 201411L
+ __cpp_lib_char8_t 201811L
__cpp_lib_nonmember_container_access 201411L
__cpp_lib_string_udls 201304L
__cpp_lib_string_view 201606L
@@ -19,12 +20,23 @@
*/
#include <string>
+#include <cassert>
#include "test_macros.h"
int main()
{
// ensure that the macros that are supposed to be defined in <string> are defined.
+#if TEST_STD_VER > 17
+# if !defined(__cpp_lib_char8_t)
+ LIBCPP_STATIC_ASSERT(false, "__cpp_lib_char8_t is not defined");
+# else
+# if __cpp_lib_char8_t < 201811L
+# error "__cpp_lib_char8_t has an invalid value"
+# endif
+# endif
+#endif
+
/*
#if !defined(__cpp_lib_fooby)
# error "__cpp_lib_fooby is not defined"
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/string_view.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/string_view.version.pass.cpp
index 53e76821bcd..82f1c66ddd1 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/string_view.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/string_view.version.pass.cpp
@@ -11,17 +11,29 @@
// <string_view> feature macros
/* Constant Value
+ __cpp_lib_char8_t 201811L
__cpp_lib_string_view 201606L
*/
#include <string_view>
+#include <cassert>
#include "test_macros.h"
int main()
{
// ensure that the macros that are supposed to be defined in <string_view> are defined.
+#if TEST_STD_VER > 17
+# if !defined(__cpp_lib_char8_t)
+ LIBCPP_STATIC_ASSERT(false, "__cpp_lib_char8_t is not defined");
+# else
+# if __cpp_lib_char8_t < 201811L
+# error "__cpp_lib_char8_t has an invalid value"
+# endif
+# endif
+#endif
+
/*
#if !defined(__cpp_lib_fooby)
# error "__cpp_lib_fooby is not defined"
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.pass.cpp
index 921b8ae93aa..ddff29d7859 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.pass.cpp
@@ -19,6 +19,7 @@
*/
#include <tuple>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.pass.cpp
index 9f7ecedb556..e53da7ef7a5 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.pass.cpp
@@ -28,13 +28,14 @@
*/
#include <type_traits>
+#include <cassert>
#include "test_macros.h"
int main()
{
// ensure that the macros that are supposed to be defined in <type_traits> are defined.
-#if _TEST_STD_VER > 14
+#if TEST_STD_VER > 14
# if !defined(__cpp_lib_void_t)
# error "__cpp_lib_void_t is not defined"
# elif __cpp_lib_void_t < 201411L
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/unordered_map.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/unordered_map.version.pass.cpp
index cf01b4afc80..38e01171731 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/unordered_map.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/unordered_map.version.pass.cpp
@@ -19,6 +19,7 @@
*/
#include <unordered_map>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/unordered_set.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/unordered_set.version.pass.cpp
index b8e70636c9a..762a07c372a 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/unordered_set.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/unordered_set.version.pass.cpp
@@ -18,6 +18,7 @@
*/
#include <unordered_set>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.pass.cpp
index 8f0322d8626..dff687f4b1d 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.pass.cpp
@@ -19,6 +19,7 @@
*/
#include <utility>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/variant.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/variant.version.pass.cpp
index 75f228ba9e3..5532e04464a 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/variant.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/variant.version.pass.cpp
@@ -16,6 +16,7 @@
*/
#include <variant>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/vector.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/vector.version.pass.cpp
index f033d447639..9932a61c56d 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/vector.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/vector.version.pass.cpp
@@ -18,6 +18,7 @@
*/
#include <vector>
+#include <cassert>
#include "test_macros.h"
int main()
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/version.version.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/version.version.pass.cpp
index e52c188bf78..f4be2eb0920 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/version.version.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/version.version.pass.cpp
@@ -88,13 +88,14 @@
*/
#include <version>
+#include <cassert>
#include "test_macros.h"
int main()
{
// ensure that the macros that are supposed to be defined in <version> are defined.
-#if _TEST_STD_VER > 14
+#if TEST_STD_VER > 14
# if !defined(__cpp_lib_atomic_is_always_lock_free)
# error "__cpp_lib_atomic_is_always_lock_free is not defined"
# elif __cpp_lib_atomic_is_always_lock_free < 201603L
@@ -102,7 +103,7 @@ int main()
# endif
#endif
-#if _TEST_STD_VER > 14
+#if TEST_STD_VER > 14
# if !defined(__cpp_lib_filesystem)
# error "__cpp_lib_filesystem is not defined"
# elif __cpp_lib_filesystem < 201703L
@@ -110,7 +111,7 @@ int main()
# endif
#endif
-#if _TEST_STD_VER > 14
+#if TEST_STD_VER > 14
# if !defined(__cpp_lib_invoke)
# error "__cpp_lib_invoke is not defined"
# elif __cpp_lib_invoke < 201411L
@@ -118,7 +119,7 @@ int main()
# endif
#endif
-#if _TEST_STD_VER > 14
+#if TEST_STD_VER > 14
# if !defined(__cpp_lib_void_t)
# error "__cpp_lib_void_t is not defined"
# elif __cpp_lib_void_t < 201411L
@@ -126,6 +127,16 @@ int main()
# endif
#endif
+#if TEST_STD_VER > 17
+# if !defined(__cpp_lib_char8_t)
+ LIBCPP_STATIC_ASSERT(false, "__cpp_lib_char8_t is not defined");
+# else
+# if __cpp_lib_char8_t < 201811L
+# error "__cpp_lib_char8_t has an invalid value"
+# endif
+# endif
+#endif
+
/*
#if !defined(__cpp_lib_fooby)
# error "__cpp_lib_fooby is not defined"
OpenPOWER on IntegriCloud