Implement C++20 p1424 - 'constexpr' feature macro concerns...
authorEdward Smith-Rowland <3dw4rd@verizon.net>
Tue, 10 Sep 2019 03:38:58 +0000 (03:38 +0000)
committerEdward Smith-Rowland <emsr@gcc.gnu.org>
Tue, 10 Sep 2019 03:38:58 +0000 (03:38 +0000)
2019-09-09  Edward Smith-Rowland  <3dw4rd@verizon.net>

Implement C++20 p1424 - 'constexpr' feature macro concerns,
Issue 3256 - Feature testing macro for constexpr algorithms,
and Issue 3257 - Missing feature testing macro update from P0858.
* include/std/version (__cpp_lib_constexpr_algorithms): Bump value.
* include/bits/algorithmfwd.h: Ditto.
* include/std/utility: Ditto.
* testsuite/25_algorithms/constexpr_macro.cc: Ditto.
* testsuite/25_algorithms/cpp_lib_constexpr.cc: New check for
__cpp_lib_constexpr macro in <algorith>.
* testsuite/20_util/exchange/constexpr.cc: Add check for
__cpp_lib_constexpr macro in <utility>.
* testsuite/25_algorithms/adjacent_find/constexpr.cc: Remove check for
__cpp_lib_constexpr_algorithms.
* testsuite/25_algorithms/all_of/constexpr.cc: Ditto.
* testsuite/25_algorithms/any_of/constexpr.cc: Ditto.
* testsuite/25_algorithms/binary_search/constexpr.cc: Ditto.
* testsuite/25_algorithms/copy/constexpr.cc: Ditto.
* testsuite/25_algorithms/copy_backward/constexpr.cc: Ditto.
* testsuite/25_algorithms/copy_if/constexpr.cc: Ditto.
* testsuite/25_algorithms/copy_n/constexpr.cc: Ditto.
* testsuite/25_algorithms/count/constexpr.cc: Ditto.
* testsuite/25_algorithms/count_if/constexpr.cc: Ditto.
* testsuite/25_algorithms/equal/constexpr.cc: Ditto.
* testsuite/25_algorithms/equal_range/constexpr.cc: Ditto.
* testsuite/25_algorithms/fill/constexpr.cc: Ditto.
* testsuite/25_algorithms/fill_n/constexpr.cc: Ditto.
* testsuite/25_algorithms/find/constexpr.cc: Ditto.
* testsuite/25_algorithms/find_end/constexpr.cc: Ditto.
* testsuite/25_algorithms/find_first_of/constexpr.cc: Ditto.
* testsuite/25_algorithms/find_if/constexpr.cc: Ditto.
* testsuite/25_algorithms/find_if_not/constexpr.cc: Ditto.
* testsuite/25_algorithms/for_each/constexpr.cc: Ditto.
* testsuite/25_algorithms/generate/constexpr.cc: Ditto.
* testsuite/25_algorithms/generate_n/constexpr.cc: Ditto.
* testsuite/25_algorithms/is_heap/constexpr.cc: Ditto.
* testsuite/25_algorithms/is_heap_until/constexpr.cc: Ditto.
* testsuite/25_algorithms/is_partitioned/constexpr.cc: Ditto.
* testsuite/25_algorithms/is_permutation/constexpr.cc: Ditto.
* testsuite/25_algorithms/is_sorted/constexpr.cc: Ditto.
* testsuite/25_algorithms/is_sorted_until/constexpr.cc: Ditto.
* testsuite/25_algorithms/lexicographical_compare/constexpr.cc: Ditto.
* testsuite/25_algorithms/lower_bound/constexpr.cc: Ditto.
* testsuite/25_algorithms/merge/constexpr.cc: Ditto.
* testsuite/25_algorithms/mismatch/constexpr.cc: Ditto.
* testsuite/25_algorithms/none_of/constexpr.cc: Ditto.
* testsuite/25_algorithms/partition_copy/constexpr.cc: Ditto.
* testsuite/25_algorithms/partition_point/constexpr.cc: Ditto.
* testsuite/25_algorithms/remove/constexpr.cc: Ditto.
* testsuite/25_algorithms/remove_copy/constexpr.cc: Ditto.
* testsuite/25_algorithms/remove_copy_if/constexpr.cc: Ditto.
* testsuite/25_algorithms/remove_if/constexpr.cc: Ditto.
* testsuite/25_algorithms/replace_copy/constexpr.cc: Ditto.
* testsuite/25_algorithms/replace_copy_if/constexpr.cc: Ditto.
* testsuite/25_algorithms/replace_if/constexpr.cc: Ditto.
* testsuite/25_algorithms/reverse_copy/constexpr.cc: Ditto.
* testsuite/25_algorithms/rotate_copy/constexpr.cc: Ditto.
* testsuite/25_algorithms/search/constexpr.cc: Ditto.
* testsuite/25_algorithms/search_n/constexpr.cc: Ditto.
* testsuite/25_algorithms/set_difference/constexpr.cc: Ditto.
* testsuite/25_algorithms/set_intersection/constexpr.cc: Ditto.
* testsuite/25_algorithms/set_symmetric_difference/constexpr.cc: Ditto.
* testsuite/25_algorithms/set_union/constexpr.cc: Ditto.
* testsuite/25_algorithms/transform/constexpr.cc: Ditto.
* testsuite/25_algorithms/unique/constexpr.cc: Ditto.
* testsuite/25_algorithms/unique_copy/constexpr.cc: Ditto.
* testsuite/25_algorithms/upper_bound/constexpr.cc: Ditto.

From-SVN: r275560

79 files changed:
libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/algorithmfwd.h
libstdc++-v3/include/bits/stl_iterator.h
libstdc++-v3/include/std/string_view
libstdc++-v3/include/std/utility
libstdc++-v3/include/std/version
libstdc++-v3/testsuite/20_util/exchange/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/adjacent_find/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/all_of/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/any_of/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/binary_search/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/constexpr_macro.cc
libstdc++-v3/testsuite/25_algorithms/copy/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/copy_backward/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/copy_if/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/copy_n/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/count/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/count_if/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/cpp_lib_constexpr.cc [new file with mode: 0644]
libstdc++-v3/testsuite/25_algorithms/equal/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/equal_range/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/fill/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/fill_n/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/find/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/find_end/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/find_first_of/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/find_if/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/find_if_not/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/for_each/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/generate/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/generate_n/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/is_heap/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/is_heap_until/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/is_partitioned/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/is_permutation/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/is_sorted/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/is_sorted_until/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/iter_swap/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/lexicographical_compare/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/lower_bound/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/make_heap/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/merge/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/mismatch/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/next_permutation/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/none_of/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/nth_element/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/partial_sort/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/partial_sort_copy/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/partition/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/partition_copy/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/partition_point/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/pop_heap/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/prev_permutation/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/push_heap/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/remove/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/remove_copy/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/remove_copy_if/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/remove_if/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/replace_copy/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/replace_copy_if/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/replace_if/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/reverse/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/reverse_copy/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/rotate/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/rotate_copy/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/search/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/search_n/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/set_difference/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/set_intersection/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/set_symmetric_difference/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/set_union/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/sort/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/sort_heap/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/swap/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/swap_ranges/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/transform/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/unique/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/unique_copy/constexpr.cc
libstdc++-v3/testsuite/25_algorithms/upper_bound/constexpr.cc

index 982d63b6da317db3fd559ea1664b5428c6e80572..7f3793409e22419c87c56ebecf5ac4badff1f30c 100644 (file)
@@ -1,3 +1,72 @@
+2019-09-09  Edward Smith-Rowland  <3dw4rd@verizon.net>
+
+       Implement C++20 p1424 - 'constexpr' feature macro concerns,
+       Issue 3256 - Feature testing macro for constexpr algorithms,
+       and Issue 3257 - Missing feature testing macro update from P0858.
+       * include/std/version (__cpp_lib_constexpr_algorithms): Bump value.
+       * include/bits/algorithmfwd.h: Ditto.
+       * include/std/utility: Ditto.
+       * testsuite/25_algorithms/constexpr_macro.cc: Ditto.
+       * testsuite/25_algorithms/cpp_lib_constexpr.cc: New check for
+       __cpp_lib_constexpr macro in <algorith>.
+       * testsuite/20_util/exchange/constexpr.cc: Add check for
+       __cpp_lib_constexpr macro in <utility>.
+       * testsuite/25_algorithms/adjacent_find/constexpr.cc: Remove check for
+       __cpp_lib_constexpr_algorithms.
+       * testsuite/25_algorithms/all_of/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/any_of/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/binary_search/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/copy/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/copy_backward/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/copy_if/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/copy_n/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/count/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/count_if/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/equal/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/equal_range/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/fill/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/fill_n/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/find/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/find_end/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/find_first_of/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/find_if/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/find_if_not/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/for_each/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/generate/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/generate_n/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/is_heap/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/is_heap_until/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/is_partitioned/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/is_permutation/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/is_sorted/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/is_sorted_until/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/lexicographical_compare/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/lower_bound/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/merge/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/mismatch/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/none_of/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/partition_copy/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/partition_point/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/remove/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/remove_copy/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/remove_copy_if/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/remove_if/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/replace_copy/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/replace_copy_if/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/replace_if/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/reverse_copy/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/rotate_copy/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/search/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/search_n/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/set_difference/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/set_intersection/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/set_symmetric_difference/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/set_union/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/transform/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/unique/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/unique_copy/constexpr.cc: Ditto.
+       * testsuite/25_algorithms/upper_bound/constexpr.cc: Ditto.
+
 2019-09-09  Edward Smith-Rowland  <3dw4rd@verizon.net>
 
        Update docs for recent <span> and constexpr lib changes.
index 9c511f05197424c97a96a5cfb68bc9ddfcb364eb..21b58eba2ddba7faa8739b55ac8c9014796bd5a1 100644 (file)
@@ -192,8 +192,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
   // adjacent_find
 
 #if __cplusplus > 201703L
-#  define __cpp_lib_constexpr_algorithms 201711L
-#  define __cpp_lib_constexpr_swap_algorithms 201806L
+#  define __cpp_lib_constexpr_algorithms 201806L
 #endif
 
 #if __cplusplus >= 201103L
index e29775a42c510fefc03c52ffb20b198e3b673d45..420fea687b5f721662c3fd1ad8c74b9e6a046387 100644 (file)
@@ -70,7 +70,7 @@
 #endif
 
 #if __cplusplus > 201402L
-# define __cpp_lib_array_constexpr 201603
+# define __cpp_lib_array_constexpr 201803
 #endif
 
 namespace std _GLIBCXX_VISIBILITY(default)
index e8b6ed3af12f65006ca9a5cf8c37346a53367667..ff1c0c3f36f85a0d64efbf5dd942c09878fd92a4 100644 (file)
@@ -47,7 +47,7 @@ namespace std _GLIBCXX_VISIBILITY(default)
 {
 _GLIBCXX_BEGIN_NAMESPACE_VERSION
 
-#define __cpp_lib_string_view 201603
+#define __cpp_lib_string_view 201803
 
   // Helper for basic_string and basic_string_view members.
   constexpr size_t
index 5f496f68ded29fed4c3f64ed7d9d442881f04506..246e3a3b247f073cbbe729944c597299732ee7a5 100644 (file)
@@ -281,7 +281,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
 #define __cpp_lib_exchange_function 201304
 
 #if __cplusplus > 201703L
-#  define __cpp_lib_constexpr_algorithms 201711L
+#  define __cpp_lib_constexpr_algorithms 201806L
 #endif
 
   /// Assign @p __new_val to @p __obj and return its previous value.
index 7625d397a0de25b4b0de3679f9d762125bcde426..f758bcd430176028559ca52eb336eaaf319fe2f2 100644 (file)
@@ -90,7 +90,7 @@
 #define __cpp_lib_addressof_constexpr 201603
 #define __cpp_lib_any 201606L
 #define __cpp_lib_apply 201603
-#define __cpp_lib_array_constexpr 201603
+#define __cpp_lib_array_constexpr 201803
 #define __cpp_lib_as_const 201510
 #define __cpp_lib_atomic_is_always_lock_free 201603
 #define __cpp_lib_bool_constant 201505
 # define __cpp_lib_shared_mutex 201505
 #endif
 #define __cpp_lib_shared_ptr_weak_type 201606
-#define __cpp_lib_string_view 201603
+#define __cpp_lib_string_view 201803
 // #define __cpp_lib_to_chars 201611L
 #define __cpp_lib_type_trait_variable_templates 201510L
 #define __cpp_lib_uncaught_exceptions 201411L
 #define __cpp_lib_atomic_ref 201806L
 #define __cpp_lib_bind_front 201907L
 #define __cpp_lib_bounded_array_traits 201902L
-#define __cpp_lib_constexpr_algorithms 201711L
-#define __cpp_lib_constexpr_swap_algorithms 201806L
+#define __cpp_lib_constexpr 201711L
+#define __cpp_lib_constexpr_algorithms 201806L
 #if __cpp_impl_destroying_delete
 # define __cpp_lib_destroying_delete 201806L
 #endif
index 38edfaadec228334e10b6d11aef92bbe46bba89a..9c84134f9878e12b915d76bd6ead71e6c17e9830 100644 (file)
 
 #include <utility>
 
+#ifndef __cpp_lib_constexpr_algorithms
+# error "Feature-test macro for constexpr algorithms missing"
+#elif __cpp_lib_constexpr_algorithms < 201806L
+# error "Feature-test macro for constexpr algorithms has wrong value"
+#endif
+
 constexpr bool
 test()
 {
index e62f43cc325777e3a15749c3205aa3fd7fe3c1f5..bcfd80600354a0480845d15be3990643c5a930c8 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr std::array<int, 12> car{{0, 1, 2, 3, 4, 5, 6, 6, 8, 9, 9, 11}};
 
 constexpr auto out0x = std::adjacent_find(car.begin(), car.end());
index e3d187ca3902326dc71b4d15e701d54dd49f64d9..7f62bbbc8c068516c8361fa8a904300223b87c50 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr std::array<int, 6> cae{{0, 2, 4, 6, 8, 10}};
 
 constexpr auto out2 = std::all_of(cae.begin(), cae.end(),
index 0ff427cbc82d7cdfcb884b3f1cfa1f7da8ad1d84..a1e64e82bf199d60c70002c0912cc905c702100a 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index aaa411275aadcf890e46b6ac1b58e040072b1a9f..8406b3d147fbbce77e50fb05595c29f77e3c654f 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 07808eed0420b74c8fe038ebaaf8c050fe578bc5..cff27695b13e5cf933a81bbda2a9c9f79eec6c4f 100644 (file)
@@ -22,6 +22,6 @@
 
 #ifndef __cpp_lib_constexpr_algorithms
 # error "Feature-test macro for constexpr algorithms missing in <version>"
-#elif __cpp_lib_constexpr_algorithms != 201711L
+#elif __cpp_lib_constexpr_algorithms < 201806L
 # error "Feature-test macro for constexpr algorithms has wrong value in <version>"
 #endif
index 9a4aa25bb7a7f0db02a20db92e43d25e721c1f85..67910b8773eec894db71fd068de31c317bd1d01c 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 25cf97f62d7c9d6e2685dc12ecaa1bcd479d998f..ed7487905a819ff3639c91d1bbd99dd7eee60320 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 59deacfbbccd1f7da006af17d86fd763d29d79b6..ef2de8c996cbef0ccc0a8d245d189f4220acfd35 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr std::array<int, 12> ca0{{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}};
 
 constexpr bool
index 72bc1e6e3f6472f3d7d5a317e559e6d46dfc9e2e..3711281e6b273bc829fbad04417aa738a13d2202 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr std::array<int, 12> ca0{{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}};
 
 constexpr bool
index d7cd56de04ccbc27a03fcb32710c7d61fe328a8a..144a83dbd2c56b125df201c8add54106363cfd56 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 2a1c7d002ee9dceedf7200bbe3a7b72f263c4b05..63f7a739cd36ed7044b530ed8196bd35980f0aae 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr std::array<int, 12> ca0{{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}};
 
 constexpr auto out9 = std::count_if(ca0.begin(), ca0.end(),
diff --git a/libstdc++-v3/testsuite/25_algorithms/cpp_lib_constexpr.cc b/libstdc++-v3/testsuite/25_algorithms/cpp_lib_constexpr.cc
new file mode 100644 (file)
index 0000000..a195a45
--- /dev/null
@@ -0,0 +1,27 @@
+// Copyright (C) 2019 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library.  This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 3, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING3.  If not see
+// <http://www.gnu.org/licenses/>.
+
+// { dg-options "-std=gnu++2a" }
+// { dg-do compile { target c++2a } }
+
+#include <algorithm>
+
+#ifndef __cpp_lib_constexpr_algorithms
+# error "Feature-test macro for constexpr algorithms missing"
+#elif __cpp_lib_constexpr_algorithms < 201806L
+# error "Feature-test macro for constexpr algorithms has wrong value"
+#endif
index a95704dbb150e6a6eb5adcad9c83fac78e3aa8d2..c578f5e92cb8a404d157cf7ba72eb6bcad52f92b 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 2d570964405a82ac589c04232c30d8ec4f88071f..ace753c10ea06eef2e3ac7cb69b219f3c6be155f 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 31e3568dde363fc5eeede9bb29fcef5cc8a996bc..02cf6d390d7e313bbe97c649a2761145c5a4570a 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index a2011912805275bdad482cfeac8645fe60689aa7..45c60039e496bbc859cb174ed43e46455ec4a5b1 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 7d59de22833369a0a8f29d040522a3b99fb9fe69..b9d538cd4850fcc314f3c122a95f8738de2569f3 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr std::array<int, 12> ca0{{0, 1, 2, 3, 4, 5,  6, 7, 8,  9, 10, 11}};
 
 constexpr auto oute = std::find(ca0.begin(), ca0.end(), 5);
index 88d6cc7c0d139dd6f77fbb41ff42a9816bb7098a..8da8ad21e691d270e889eab38cdce48146c9e3e9 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 99cbed28297fdf8a4fb0f37beeb60d32de1eaa87..3d76aafc6061493192d0e376f2fa5aa1a824d896 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr std::array<int, 12> ca0{{0, 1, 2, 3, 4, 5, 6,  7,  8,  9, 10, 11}};
 constexpr std::array<int, 12> cas{{3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14}};
 
index 395a21e9b36959dff5efc0f2a4c81ac79e980a17..4f69ed5c472191894475c6ae161a56f6a75ad4a2 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 5b1b9c3ad46f58931ddddeb255747e5734f2432b..9d8e7c35acb67cccbe1e69935c9bfdabcac03a33 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr std::array<int, 12> ca0{{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}};
 
 constexpr auto outk = std::find_if_not(ca0.begin(), ca0.end(),
index d900ef43a4416f26ab5706f7f8579565d3df6a01..ee3d2d58adac2d0daffe6b25b045a6ad9a06bac8 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr std::array<int, 12> ca0{{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}};
 
 constexpr bool
index b0e26b69d91fc93ba4c68902c8b6b26e8a393fb0..38fd407dd60f643259b7cb140f39140f6162895f 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index f2a203e9c76b4c0390443569b18871a347e81ce0..ed70be7b1ce37a2dc022225335596a2682ffe9e8 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 5f25a304405522899f117fcd10f62f455662d534..aeaab671b26f9abed13e6a01574924c3adaa3165 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 // heap
 constexpr std::array<int, 23>
 ah{{22,
index ddd4cdd10dc33749631edc68fdb29bdf47692e83..e4c0e9c3ffa00193754e4c70c318c97ac6ce72c9 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 // heap
 constexpr std::array<int, 23>
 ahu{{22,
index 527746f56f3cf80e1f24d72ba3e4ed5dfa102f93..8363c763c10f761fc65f7dedd03a9e51277eb073 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 3f5df35aaaacc83b1bf14ca497fa0b89cbdbfce0..1cd0cb811bc03a9a46d584c3dbdcc6a79716ca5b 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 623d72c1a5934ccc939554f30fa7dc18f9fa7d85..0be2f5fed626c7f3fe926944e0614ef9639f0cb7 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr std::array<int, 12> ca0{{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}};
 
 constexpr auto outv = std::is_sorted(ca0.begin(), ca0.end());
index f109ee8ef10797324e0fa59ff5ad604b4837b5e7..1352c8b8e4809058188a45540caf125b506b273e 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 9444bf4904158a9a27deb15d2f707d6a7e2d55d0..385065d97b257da52a775cf634c212530de63c03 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_swap_algorithms
-# error "Feature-test macro for constexpr swap algorithms missing"
-#elif __cpp_lib_constexpr_swap_algorithms < 201806L
-# error "Feature-test macro for constexpr swap algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 93dee5d2f946deb71a646d555d53d48b99de3303..aa1bb66461dc19e6f44a2cd052b2b35a5edf724d 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index f8c191b09703bfe62af6618bc8d8318490b6fd24..45eeeba294a605760d0d3292624ad32c25865fc6 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 426310a731775e3b9f9d0aea4ec078bd50b6818c..11ba681d9b25b9532cd85523f60e7a49007f0171 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_swap_algorithms
-# error "Feature-test macro for constexpr swap algorithms missing"
-#elif __cpp_lib_constexpr_swap_algorithms < 201806L
-# error "Feature-test macro for constexpr swap algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index e240e4453fd240dd71855e14f2cb7a3d3f7ab0a2..cc8d3755da4514136a81a6ba9a4f173dfaa0f221 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 946199b0b7c47be78f4f9896cf034925e95fe8f8..45fa70804576a06ccce7d7e7c90beb1bc9deb9ad 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 4b5c21850fe145ec7d6351d5a38df96128d33aec..20a1019720d39f27b83c0c9e7b7dbdde0993ce6b 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_swap_algorithms
-# error "Feature-test macro for constexpr swap algorithms missing"
-#elif __cpp_lib_constexpr_swap_algorithms < 201806L
-# error "Feature-test macro for constexpr swap algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 2d02adaec525facf7664a7830af59f388e9527a3..4655194ac5c77568f0f050576c46eebd60b54ba1 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 1c4307478c6041035225843e1f65730bf93a8c7a..3149e66b1e662dd34e9b115f3f051043852f02ab 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_swap_algorithms
-# error "Feature-test macro for constexpr swap algorithms missing"
-#elif __cpp_lib_constexpr_swap_algorithms < 201806L
-# error "Feature-test macro for constexpr swap algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index b31be716830fc81b897dcfb2cb071ed967843d1e..64285bb28d2164e23dd94eb4db037ae1b1e749a9 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_swap_algorithms
-# error "Feature-test macro for constexpr swap algorithms missing"
-#elif __cpp_lib_constexpr_swap_algorithms < 201806L
-# error "Feature-test macro for constexpr swap algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index b7f538f4bef255ecd94ef75683beda0e43edba08..d2adcb7257b671f825f656ecedcc8e4b8d96e0f9 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_swap_algorithms
-# error "Feature-test macro for constexpr swap algorithms missing"
-#elif __cpp_lib_constexpr_swap_algorithms < 201806L
-# error "Feature-test macro for constexpr swap algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index bd678afd0f5ffc83ff34a43a382b0456d9c42322..17a5a410423f510d89f3d611782f07d5f811a18b 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_swap_algorithms
-# error "Feature-test macro for constexpr swap algorithms missing"
-#elif __cpp_lib_constexpr_swap_algorithms < 201806L
-# error "Feature-test macro for constexpr swap algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 11c42ee77a59ea12cf59f27f1e124e3c0ffb3bd7..5e282b2bd52eb2b8d45a3b4a402d8072a88d9a7c 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 4ba82842362d6c6ab633144bd790f505adbc9fec..ccfc514fc9887e5cd582afe36cddcd978a5a2907 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr std::array<int, 12> caeo{{0, 2, 4, 6, 8, 10, 1, 3, 5, 7, 9, 11}};
 
 constexpr bool
index ff9ca7bb71ea53b82f566ac15c38ae4bea63268b..b0501c401dcdac484086aba5fe7a88600d8e1b34 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_swap_algorithms
-# error "Feature-test macro for constexpr swap algorithms missing"
-#elif __cpp_lib_constexpr_swap_algorithms < 201806L
-# error "Feature-test macro for constexpr swap algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index a3a038c743c4a964a8bc68ccf8443a458642a069..39ef203ab11d038ce0eac6b9173c608a4db3f875 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_swap_algorithms
-# error "Feature-test macro for constexpr swap algorithms missing"
-#elif __cpp_lib_constexpr_swap_algorithms < 201806L
-# error "Feature-test macro for constexpr swap algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 04b5688d05c086c40bf529675ed9cf35de8aac43..2bca83c9557865080e823d68e6574369ef4e7e59 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_swap_algorithms
-# error "Feature-test macro for constexpr swap algorithms missing"
-#elif __cpp_lib_constexpr_swap_algorithms < 201806L
-# error "Feature-test macro for constexpr swap algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 580ac10c75c8b5fd5b38831a713baaafc5a0ec4c..33b804eee580a35be63b92d69c89cf0620bea30d 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index a20e5290e5b35c95d6fc19bfbad1a4720d730cef..2c289f3f81124fc5d0e8d1a1f7de7676dd8554d5 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 0758d1014512e83b7c9ac20d2eeda5cdebb366b3..b743b762296c759636cefbc4d90ea842579f0e3e 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index e8c00484c02a3699056deeee57233ada54ab0ed6..980af4aa6a9ea65fdf9244ffed5e320a87709b75 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 754b879974064d052d6d001f4c617401daf654a3..ddb46fae5f944446fbd483ffd6805ecc7b4367f0 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr std::array<int, 12> ca0{{0, 1, 2, 3, 4, 5, 6, 7, 8,  9, 10, 11}};
 
 constexpr bool
index 1fa6bb023bb4d9efc075708ea32cfdb7f81f3315..ff643a7132284319a5a9cf70e7408b5591f7fc6b 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr std::array<int, 12> ca0{{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}};
 constexpr bool
 test()
index 1dc28e1ddad7af808a850a3f581adaaf46cdcfd7..00b784fb6a82470a189d0889aacb4c45b16400cf 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 8e1065b50ee56e40bddcabf63c8e2f6321ef4d15..ba1f47b6127a5856761259f427cb54e13551180b 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_swap_algorithms
-# error "Feature-test macro for constexpr swap algorithms missing"
-#elif __cpp_lib_constexpr_swap_algorithms < 201806L
-# error "Feature-test macro for constexpr swap algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 224010914657a35f2c3f022443cdb5d292117de1..fc60306f23fd759522c6c92eb1438c54de6616c9 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index b5862876290dacf3b65efca01fb1580e6447ec24..b58f7f17b322a18d15ae659774339293836cd221 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_swap_algorithms
-# error "Feature-test macro for constexpr swap algorithms missing"
-#elif __cpp_lib_constexpr_swap_algorithms < 201806L
-# error "Feature-test macro for constexpr swap algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 63bca002144baf1910d61ddcb7b5c5f029a4257d..1ee7c2120a48efe0ce50e555c00cdf2d17031a2b 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index a611c1c858423a92c683ddf43e56403f084a6d4d..a0335768cece834e456db708cf0c0678807bd889 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index ac339202cc67af72bb1c5f58849ac745388ce1cb..8769797adfdad0b5c1e6380bc26f6345cf57be0a 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr std::array<int, 12> car{{0, 1, 2, 3, 4, 5, 6, 6, 8, 9, 9, 11}};
 
 constexpr auto outuu = std::search_n(car.begin(), car.end(), 2, 6);
index ff913eaffeb52a8790abc3bc0f73e3aa6d4cf8cc..3ea252e559104481709801fca2da8447a4216c02 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index f1a95a2983202ac5cbec7cc3cd53e43ef0dd603f..3f9b6bdc413051a0d8e76abb0d434edbfd899d05 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index ff913eaffeb52a8790abc3bc0f73e3aa6d4cf8cc..3ea252e559104481709801fca2da8447a4216c02 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 61d3f1e62a2d1905bc9a3486ceda89910024aaa4..a47503b9c964c28add0a826581375500dc03b38c 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 7b91b75fce92ae3ba2ec9ddf15ff7bf17ee01ddd..382e11480b534a5b74527de30faad43468c17d0e 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_swap_algorithms
-# error "Feature-test macro for constexpr swap algorithms missing"
-#elif __cpp_lib_constexpr_swap_algorithms < 201806L
-# error "Feature-test macro for constexpr swap algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index fa6e30935422091f370832cd887d6bc28b593b77..ed52a1b2d833f5bb2371b37a41b5e107d5eb47da 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_swap_algorithms
-# error "Feature-test macro for constexpr swap algorithms missing"
-#elif __cpp_lib_constexpr_swap_algorithms < 201806L
-# error "Feature-test macro for constexpr swap algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 7f2d1f8a9f2a1a0007bee2daf8c9311662eef81c..a834a9e7f6f2bf693a388334265508c1c678d0ca 100644 (file)
 
 #include <algorithm>
 
-#ifndef __cpp_lib_constexpr_swap_algorithms
-# error "Feature-test macro for constexpr swap algorithms missing"
-#elif __cpp_lib_constexpr_swap_algorithms < 201806L
-# error "Feature-test macro for constexpr swap algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index a99155bb1daef60f9e766d0410f687e9fdcaefb6..4d190184fcd4f9b829a49569c3a03b5a1130e467 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_swap_algorithms
-# error "Feature-test macro for constexpr swap algorithms missing"
-#elif __cpp_lib_constexpr_swap_algorithms < 201806L
-# error "Feature-test macro for constexpr swap algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index 03c6d71db42523f4b1e6dd9d01486ca5d29c2803..e35e9c199827fefe356730e44c534e68f5295207 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr std::array<int, 12> ca0{{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}};
 constexpr bool
 test()
index f90aaac0d99e5d44dd6c20d624b989348ba9b398..261dfa9d3fda7c7abc9f39e9c76586fa86d9ac0c 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index f13f38856989094a601c6aa902ce234458a19ce2..da7eabba6f12a59c2b59407f2d78450ba4a6a27f 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {
index a0a8e25dc081d3f1e37186b70faa261ce526dfff..f6312b8fb751f7704a89916aa203400450cb3214 100644 (file)
 #include <algorithm>
 #include <array>
 
-#ifndef __cpp_lib_constexpr_algorithms
-# error "Feature-test macro for constexpr algorithms missing"
-#elif __cpp_lib_constexpr_algorithms < 201711L
-# error "Feature-test macro for constexpr algorithms has wrong value"
-#endif
-
 constexpr bool
 test()
 {