Implement C++20 p1424 - 'constexpr' feature macro concerns...

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
This commit is contained in:
Edward Smith-Rowland 2019-09-10 03:38:58 +00:00 committed by Edward Smith-Rowland
parent c96fc08123
commit b30ee71a40
79 changed files with 111 additions and 430 deletions

View 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.

View 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

View 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)

View 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

View 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.

View 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
@ -138,7 +138,7 @@
# 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
@ -153,8 +153,8 @@
#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

View file

@ -20,6 +20,12 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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());

View file

@ -21,12 +21,6 @@
#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(),

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View 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

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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

View file

@ -21,12 +21,6 @@
#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

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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(),

View file

@ -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

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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);

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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}};

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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(),

View file

@ -21,12 +21,6 @@
#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

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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,

View file

@ -21,12 +21,6 @@
#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,

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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());

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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

View file

@ -21,12 +21,6 @@
#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()

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -20,12 +20,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -20,12 +20,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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);

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -20,12 +20,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{

View file

@ -21,12 +21,6 @@
#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()
{