From: Jonathan Wakely Date: Wed, 22 Apr 2020 06:21:01 +0000 (+0100) Subject: libstdc++: Update __cpp_lib_erase_if macro (P1115R3) X-Git-Tag: misc/first-auto-changelog-9~103 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=6153cc3b756fbcb347176bb93b5a03433faa7ff8;p=thirdparty%2Fgcc.git libstdc++: Update __cpp_lib_erase_if macro (P1115R3) Now that this feature has been approved for C++20 we can define the macro to the official value. Backport from mainline 2020-02-15 Jonathan Wakely * include/bits/erase_if.h (__cpp_lib_erase_if): Define to 202002L. * include/std/deque (__cpp_lib_erase_if): Likewise. * include/std/forward_list (__cpp_lib_erase_if): Likewise. * include/std/list (__cpp_lib_erase_if): Likewise. * include/std/string (__cpp_lib_erase_if): Likewise. * include/std/vector (__cpp_lib_erase_if): Likewise. * include/std/version (__cpp_lib_erase_if): Likewise. * testsuite/21_strings/basic_string/erasure.cc: Test for new value. * testsuite/23_containers/deque/erasure.cc: Likewise. * testsuite/23_containers/forward_list/erasure.cc: Likewise. * testsuite/23_containers/list/erasure.cc: Likewise. * testsuite/23_containers/map/erasure.cc: Likewise. * testsuite/23_containers/set/erasure.cc: Likewise. * testsuite/23_containers/unordered_map/erasure.cc: Likewise. * testsuite/23_containers/unordered_set/erasure.cc: Likewise. * testsuite/23_containers/vector/erasure.cc: Likewise. --- diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 59bc2feed86c..4b5abe18b8d1 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,25 @@ +2020-04-22 Jonathan Wakely + + Backport from mainline + 2020-02-15 Jonathan Wakely + + * include/bits/erase_if.h (__cpp_lib_erase_if): Define to 202002L. + * include/std/deque (__cpp_lib_erase_if): Likewise. + * include/std/forward_list (__cpp_lib_erase_if): Likewise. + * include/std/list (__cpp_lib_erase_if): Likewise. + * include/std/string (__cpp_lib_erase_if): Likewise. + * include/std/vector (__cpp_lib_erase_if): Likewise. + * include/std/version (__cpp_lib_erase_if): Likewise. + * testsuite/21_strings/basic_string/erasure.cc: Test for new value. + * testsuite/23_containers/deque/erasure.cc: Likewise. + * testsuite/23_containers/forward_list/erasure.cc: Likewise. + * testsuite/23_containers/list/erasure.cc: Likewise. + * testsuite/23_containers/map/erasure.cc: Likewise. + * testsuite/23_containers/set/erasure.cc: Likewise. + * testsuite/23_containers/unordered_map/erasure.cc: Likewise. + * testsuite/23_containers/unordered_set/erasure.cc: Likewise. + * testsuite/23_containers/vector/erasure.cc: Likewise. + 2020-04-21 Jonathan Wakely * doc/xml/manual/status_cxx2017.xml: Fix name of feature test macro. diff --git a/libstdc++-v3/include/bits/erase_if.h b/libstdc++-v3/include/bits/erase_if.h index 4641dbebd851..523bbecfab37 100644 --- a/libstdc++-v3/include/bits/erase_if.h +++ b/libstdc++-v3/include/bits/erase_if.h @@ -39,7 +39,7 @@ namespace std _GLIBCXX_BEGIN_NAMESPACE_VERSION #if __cplusplus > 201703L -# define __cpp_lib_erase_if 201900L +# define __cpp_lib_erase_if 202002L #endif namespace __detail diff --git a/libstdc++-v3/include/std/deque b/libstdc++-v3/include/std/deque index ed4927e13b74..b940dacb8486 100644 --- a/libstdc++-v3/include/std/deque +++ b/libstdc++-v3/include/std/deque @@ -95,7 +95,7 @@ namespace std _GLIBCXX_VISIBILITY(default) { _GLIBCXX_BEGIN_NAMESPACE_VERSION -#define __cpp_lib_erase_if 201900L +#define __cpp_lib_erase_if 202002L template inline typename deque<_Tp, _Alloc>::size_type diff --git a/libstdc++-v3/include/std/forward_list b/libstdc++-v3/include/std/forward_list index 9d6cc40593ba..4b319f93a610 100644 --- a/libstdc++-v3/include/std/forward_list +++ b/libstdc++-v3/include/std/forward_list @@ -66,7 +66,7 @@ namespace std _GLIBCXX_VISIBILITY(default) { _GLIBCXX_BEGIN_NAMESPACE_VERSION -#define __cpp_lib_erase_if 201900L +#define __cpp_lib_erase_if 202002L template inline typename forward_list<_Tp, _Alloc>::size_type diff --git a/libstdc++-v3/include/std/list b/libstdc++-v3/include/std/list index 8d6ac198c9a7..6fb5ea8dcc4e 100644 --- a/libstdc++-v3/include/std/list +++ b/libstdc++-v3/include/std/list @@ -90,7 +90,7 @@ namespace std _GLIBCXX_VISIBILITY(default) { _GLIBCXX_BEGIN_NAMESPACE_VERSION -#define __cpp_lib_erase_if 201900L +#define __cpp_lib_erase_if 202002L template inline typename list<_Tp, _Alloc>::size_type diff --git a/libstdc++-v3/include/std/string b/libstdc++-v3/include/std/string index 6ccc06f337aa..506cb78313e3 100644 --- a/libstdc++-v3/include/std/string +++ b/libstdc++-v3/include/std/string @@ -118,7 +118,7 @@ namespace std _GLIBCXX_VISIBILITY(default) { _GLIBCXX_BEGIN_NAMESPACE_VERSION -#define __cpp_lib_erase_if 201900L +#define __cpp_lib_erase_if 202002L template diff --git a/libstdc++-v3/include/std/vector b/libstdc++-v3/include/std/vector index e5e13ab3ef7c..1c1e2fd60e7d 100644 --- a/libstdc++-v3/include/std/vector +++ b/libstdc++-v3/include/std/vector @@ -105,7 +105,7 @@ namespace std _GLIBCXX_VISIBILITY(default) { _GLIBCXX_BEGIN_NAMESPACE_VERSION -#define __cpp_lib_erase_if 201900L +#define __cpp_lib_erase_if 202002L template inline typename vector<_Tp, _Alloc>::size_type diff --git a/libstdc++-v3/include/std/version b/libstdc++-v3/include/std/version index 3c2883019520..9dc7cbbb184b 100644 --- a/libstdc++-v3/include/std/version +++ b/libstdc++-v3/include/std/version @@ -155,7 +155,7 @@ # define __cpp_lib_destroying_delete 201806L #endif #define __cpp_lib_endian 201907L -#define __cpp_lib_erase_if 201900L +#define __cpp_lib_erase_if 202002L #define __cpp_lib_interpolate 201902L #ifdef _GLIBCXX_HAVE_BUILTIN_IS_CONSTANT_EVALUATED # define __cpp_lib_is_constant_evaluated 201811L diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/erasure.cc b/libstdc++-v3/testsuite/21_strings/basic_string/erasure.cc index 873dd0cbf0f6..a00faf941808 100644 --- a/libstdc++-v3/testsuite/21_strings/basic_string/erasure.cc +++ b/libstdc++-v3/testsuite/21_strings/basic_string/erasure.cc @@ -21,6 +21,12 @@ #include #include +#ifndef __cpp_lib_erase_if +# error "Feature-test macro for erase_if missing in " +#elif __cpp_lib_erase_if < 202002 +# error "Feature-test macro for erase_if has wrong value in " +#endif + void test01() { diff --git a/libstdc++-v3/testsuite/23_containers/deque/erasure.cc b/libstdc++-v3/testsuite/23_containers/deque/erasure.cc index 39ea6deecc2a..da5330b300a4 100644 --- a/libstdc++-v3/testsuite/23_containers/deque/erasure.cc +++ b/libstdc++-v3/testsuite/23_containers/deque/erasure.cc @@ -22,9 +22,9 @@ #include #ifndef __cpp_lib_erase_if -# error "Feature-test macro for erase_if missing" -#elif __cpp_lib_erase_if < 201811 -# error "Feature-test macro for erase_if has wrong value" +# error "Feature-test macro for erase_if missing in " +#elif __cpp_lib_erase_if < 202002 +# error "Feature-test macro for erase_if has wrong value in " #endif void diff --git a/libstdc++-v3/testsuite/23_containers/forward_list/erasure.cc b/libstdc++-v3/testsuite/23_containers/forward_list/erasure.cc index 724a720f6549..50b357194711 100644 --- a/libstdc++-v3/testsuite/23_containers/forward_list/erasure.cc +++ b/libstdc++-v3/testsuite/23_containers/forward_list/erasure.cc @@ -22,9 +22,9 @@ #include #ifndef __cpp_lib_erase_if -# error "Feature-test macro for erase_if missing" -#elif __cpp_lib_erase_if < 201811 -# error "Feature-test macro for erase_if has wrong value" +# error "Feature-test macro for erase_if missing in " +#elif __cpp_lib_erase_if < 202002 +# error "Feature-test macro for erase_if has wrong value in " #endif void diff --git a/libstdc++-v3/testsuite/23_containers/list/erasure.cc b/libstdc++-v3/testsuite/23_containers/list/erasure.cc index a9927b484e15..ff849808fd92 100644 --- a/libstdc++-v3/testsuite/23_containers/list/erasure.cc +++ b/libstdc++-v3/testsuite/23_containers/list/erasure.cc @@ -22,9 +22,9 @@ #include #ifndef __cpp_lib_erase_if -# error "Feature-test macro for erase_if missing" -#elif __cpp_lib_erase_if < 201811 -# error "Feature-test macro for erase_if has wrong value" +# error "Feature-test macro for erase_if missing in " +#elif __cpp_lib_erase_if < 202002 +# error "Feature-test macro for erase_if has wrong value in " #endif void diff --git a/libstdc++-v3/testsuite/23_containers/map/erasure.cc b/libstdc++-v3/testsuite/23_containers/map/erasure.cc index d8a57160865a..8e5955ffbd12 100644 --- a/libstdc++-v3/testsuite/23_containers/map/erasure.cc +++ b/libstdc++-v3/testsuite/23_containers/map/erasure.cc @@ -22,9 +22,9 @@ #include #ifndef __cpp_lib_erase_if -# error "Feature-test macro for erase_if missing" -#elif __cpp_lib_erase_if < 201811 -# error "Feature-test macro for erase_if has wrong value" +# error "Feature-test macro for erase_if missing in " +#elif __cpp_lib_erase_if < 202002 +# error "Feature-test macro for erase_if has wrong value in " #endif auto is_odd_pair = [](const std::pair& p) diff --git a/libstdc++-v3/testsuite/23_containers/set/erasure.cc b/libstdc++-v3/testsuite/23_containers/set/erasure.cc index 2412d69f75c0..494d6315ea7a 100644 --- a/libstdc++-v3/testsuite/23_containers/set/erasure.cc +++ b/libstdc++-v3/testsuite/23_containers/set/erasure.cc @@ -22,9 +22,9 @@ #include #ifndef __cpp_lib_erase_if -# error "Feature-test macro for erase_if missing" -#elif __cpp_lib_erase_if < 201811 -# error "Feature-test macro for erase_if has wrong value" +# error "Feature-test macro for erase_if missing in " +#elif __cpp_lib_erase_if < 202002 +# error "Feature-test macro for erase_if has wrong value in " #endif auto is_odd = [](const int i) { return i % 2 != 0; }; diff --git a/libstdc++-v3/testsuite/23_containers/unordered_map/erasure.cc b/libstdc++-v3/testsuite/23_containers/unordered_map/erasure.cc index 35190a0d19e8..1bfc53201dd4 100644 --- a/libstdc++-v3/testsuite/23_containers/unordered_map/erasure.cc +++ b/libstdc++-v3/testsuite/23_containers/unordered_map/erasure.cc @@ -22,9 +22,9 @@ #include #ifndef __cpp_lib_erase_if -# error "Feature-test macro for erase_if missing" -#elif __cpp_lib_erase_if < 201811 -# error "Feature-test macro for erase_if has wrong value" +# error "Feature-test macro for erase_if missing in " +#elif __cpp_lib_erase_if < 202002 +# error "Feature-test macro for erase_if has wrong value in " #endif auto is_odd_pair = [](const std::pair& p) diff --git a/libstdc++-v3/testsuite/23_containers/unordered_set/erasure.cc b/libstdc++-v3/testsuite/23_containers/unordered_set/erasure.cc index 5ffabf538bdc..97aa24c48343 100644 --- a/libstdc++-v3/testsuite/23_containers/unordered_set/erasure.cc +++ b/libstdc++-v3/testsuite/23_containers/unordered_set/erasure.cc @@ -22,9 +22,9 @@ #include #ifndef __cpp_lib_erase_if -# error "Feature-test macro for erase_if missing" -#elif __cpp_lib_erase_if < 201811 -# error "Feature-test macro for erase_if has wrong value" +# error "Feature-test macro for erase_if missing in " +#elif __cpp_lib_erase_if < 202002 +# error "Feature-test macro for erase_if has wrong value in " #endif void diff --git a/libstdc++-v3/testsuite/23_containers/vector/erasure.cc b/libstdc++-v3/testsuite/23_containers/vector/erasure.cc index 0a23c3f0d12d..ec479053cf11 100644 --- a/libstdc++-v3/testsuite/23_containers/vector/erasure.cc +++ b/libstdc++-v3/testsuite/23_containers/vector/erasure.cc @@ -22,9 +22,9 @@ #include #ifndef __cpp_lib_erase_if -# error "Feature-test macro for erase_if missing" -#elif __cpp_lib_erase_if < 201811 -# error "Feature-test macro for erase_if has wrong value" +# error "Feature-test macro for erase_if missing in " +#elif __cpp_lib_erase_if < 202002 +# error "Feature-test macro for erase_if has wrong value in " #endif void