[gcc(refs/vendors/ibm/heads/gcc-9-branch)] libstdc++: Update __cpp_lib_erase_if macro (P1115R3)
Peter Bergner
bergner@gcc.gnu.org
Thu Apr 23 21:05:48 GMT 2020
https://gcc.gnu.org/g:6153cc3b756fbcb347176bb93b5a03433faa7ff8
commit 6153cc3b756fbcb347176bb93b5a03433faa7ff8
Author: Jonathan Wakely <jwakely@redhat.com>
Date: Wed Apr 22 07:21:01 2020 +0100
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 <jwakely@redhat.com>
* 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:
---
libstdc++-v3/ChangeLog | 22 ++++++++++++++++++++++
libstdc++-v3/include/bits/erase_if.h | 2 +-
libstdc++-v3/include/std/deque | 2 +-
libstdc++-v3/include/std/forward_list | 2 +-
libstdc++-v3/include/std/list | 2 +-
libstdc++-v3/include/std/string | 2 +-
libstdc++-v3/include/std/vector | 2 +-
libstdc++-v3/include/std/version | 2 +-
.../testsuite/21_strings/basic_string/erasure.cc | 6 ++++++
.../testsuite/23_containers/deque/erasure.cc | 6 +++---
.../23_containers/forward_list/erasure.cc | 6 +++---
.../testsuite/23_containers/list/erasure.cc | 6 +++---
.../testsuite/23_containers/map/erasure.cc | 6 +++---
.../testsuite/23_containers/set/erasure.cc | 6 +++---
.../23_containers/unordered_map/erasure.cc | 6 +++---
.../23_containers/unordered_set/erasure.cc | 6 +++---
.../testsuite/23_containers/vector/erasure.cc | 6 +++---
17 files changed, 59 insertions(+), 31 deletions(-)
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 59bc2feed86..4b5abe18b8d 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,25 @@
+2020-04-22 Jonathan Wakely <jwakely@redhat.com>
+
+ Backport from mainline
+ 2020-02-15 Jonathan Wakely <jwakely@redhat.com>
+
+ * 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 <jwakely@redhat.com>
* 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 4641dbebd85..523bbecfab3 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 ed4927e13b7..b940dacb848 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<typename _Tp, typename _Alloc, typename _Predicate>
inline typename deque<_Tp, _Alloc>::size_type
diff --git a/libstdc++-v3/include/std/forward_list b/libstdc++-v3/include/std/forward_list
index 9d6cc40593b..4b319f93a61 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<typename _Tp, typename _Alloc, typename _Predicate>
inline typename forward_list<_Tp, _Alloc>::size_type
diff --git a/libstdc++-v3/include/std/list b/libstdc++-v3/include/std/list
index 8d6ac198c9a..6fb5ea8dcc4 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<typename _Tp, typename _Alloc, typename _Predicate>
inline typename list<_Tp, _Alloc>::size_type
diff --git a/libstdc++-v3/include/std/string b/libstdc++-v3/include/std/string
index 6ccc06f337a..506cb78313e 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<typename _CharT, typename _Traits, typename _Alloc,
typename _Predicate>
diff --git a/libstdc++-v3/include/std/vector b/libstdc++-v3/include/std/vector
index e5e13ab3ef7..1c1e2fd60e7 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<typename _Tp, typename _Alloc, typename _Predicate>
inline typename vector<_Tp, _Alloc>::size_type
diff --git a/libstdc++-v3/include/std/version b/libstdc++-v3/include/std/version
index 3c288301952..9dc7cbbb184 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 873dd0cbf0f..a00faf94180 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 <string>
#include <testsuite_hooks.h>
+#ifndef __cpp_lib_erase_if
+# error "Feature-test macro for erase_if missing in <string>"
+#elif __cpp_lib_erase_if < 202002
+# error "Feature-test macro for erase_if has wrong value in <string>"
+#endif
+
void
test01()
{
diff --git a/libstdc++-v3/testsuite/23_containers/deque/erasure.cc b/libstdc++-v3/testsuite/23_containers/deque/erasure.cc
index 39ea6deecc2..da5330b300a 100644
--- a/libstdc++-v3/testsuite/23_containers/deque/erasure.cc
+++ b/libstdc++-v3/testsuite/23_containers/deque/erasure.cc
@@ -22,9 +22,9 @@
#include <testsuite_hooks.h>
#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 <deque>"
+#elif __cpp_lib_erase_if < 202002
+# error "Feature-test macro for erase_if has wrong value in <deque>"
#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 724a720f654..50b35719471 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 <testsuite_hooks.h>
#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 <forward_list>"
+#elif __cpp_lib_erase_if < 202002
+# error "Feature-test macro for erase_if has wrong value in <forward_list>"
#endif
void
diff --git a/libstdc++-v3/testsuite/23_containers/list/erasure.cc b/libstdc++-v3/testsuite/23_containers/list/erasure.cc
index a9927b484e1..ff849808fd9 100644
--- a/libstdc++-v3/testsuite/23_containers/list/erasure.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/erasure.cc
@@ -22,9 +22,9 @@
#include <testsuite_hooks.h>
#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 <list>"
+#elif __cpp_lib_erase_if < 202002
+# error "Feature-test macro for erase_if has wrong value in <list>"
#endif
void
diff --git a/libstdc++-v3/testsuite/23_containers/map/erasure.cc b/libstdc++-v3/testsuite/23_containers/map/erasure.cc
index d8a57160865..8e5955ffbd1 100644
--- a/libstdc++-v3/testsuite/23_containers/map/erasure.cc
+++ b/libstdc++-v3/testsuite/23_containers/map/erasure.cc
@@ -22,9 +22,9 @@
#include <testsuite_hooks.h>
#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 <map>"
+#elif __cpp_lib_erase_if < 202002
+# error "Feature-test macro for erase_if has wrong value in <map>"
#endif
auto is_odd_pair = [](const std::pair<const int, std::string>& p)
diff --git a/libstdc++-v3/testsuite/23_containers/set/erasure.cc b/libstdc++-v3/testsuite/23_containers/set/erasure.cc
index 2412d69f75c..494d6315ea7 100644
--- a/libstdc++-v3/testsuite/23_containers/set/erasure.cc
+++ b/libstdc++-v3/testsuite/23_containers/set/erasure.cc
@@ -22,9 +22,9 @@
#include <testsuite_hooks.h>
#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 <set>"
+#elif __cpp_lib_erase_if < 202002
+# error "Feature-test macro for erase_if has wrong value in <set>"
#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 35190a0d19e..1bfc53201dd 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 <testsuite_hooks.h>
#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 <unordered_map>"
+#elif __cpp_lib_erase_if < 202002
+# error "Feature-test macro for erase_if has wrong value in <unordered_map>"
#endif
auto is_odd_pair = [](const std::pair<const int, std::string>& p)
diff --git a/libstdc++-v3/testsuite/23_containers/unordered_set/erasure.cc b/libstdc++-v3/testsuite/23_containers/unordered_set/erasure.cc
index 5ffabf538bd..97aa24c4834 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 <testsuite_hooks.h>
#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 <unordered_set>"
+#elif __cpp_lib_erase_if < 202002
+# error "Feature-test macro for erase_if has wrong value in <unordered_set>"
#endif
void
diff --git a/libstdc++-v3/testsuite/23_containers/vector/erasure.cc b/libstdc++-v3/testsuite/23_containers/vector/erasure.cc
index 0a23c3f0d12..ec479053cf1 100644
--- a/libstdc++-v3/testsuite/23_containers/vector/erasure.cc
+++ b/libstdc++-v3/testsuite/23_containers/vector/erasure.cc
@@ -22,9 +22,9 @@
#include <testsuite_hooks.h>
#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 <vector>"
+#elif __cpp_lib_erase_if < 202002
+# error "Feature-test macro for erase_if has wrong value in <vector>"
#endif
void
More information about the Libstdc++-cvs
mailing list