Fix more missing or incorrect feature test macros

* include/bits/erase_if.h [__cplusplus > 201703L]
	(__cpp_lib_erase_if): Only define for C++2a.
	* include/std/iterator [__cplusplus >= 201402L && !_GLIBCXX_DEBUG]
	(__cpp_lib_null_iterators): Define.
	* include/std/version [__cplusplus >= 201402L && !_GLIBCXX_DEBUG]
	(__cpp_lib_null_iterators): Define.
	[__cpp_impl_destroying_delete] (__cpp_lib_destroying_delete): Define.

From-SVN: r267937
This commit is contained in:
Jonathan Wakely 2019-01-15 12:58:19 +00:00 committed by Jonathan Wakely
parent 56a9eaf9ab
commit 6e3dd211ca
4 changed files with 22 additions and 1 deletions

View File

@ -1,5 +1,13 @@
2019-01-15 Jonathan Wakely <jwakely@redhat.com>
* include/bits/erase_if.h [__cplusplus > 201703L]
(__cpp_lib_erase_if): Only define for C++2a.
* include/std/iterator [__cplusplus >= 201402L && !_GLIBCXX_DEBUG]
(__cpp_lib_null_iterators): Define.
* include/std/version [__cplusplus >= 201402L && !_GLIBCXX_DEBUG]
(__cpp_lib_null_iterators): Define.
[__cpp_impl_destroying_delete] (__cpp_lib_destroying_delete): Define.
* doc/xml/manual/status_cxx2017.xml: Document P0032R3 and P0307R2
status.
* include/bits/stl_uninitialized.h (__cpp_lib_raw_memory_algorithms):

View File

@ -38,7 +38,9 @@ namespace std
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
#define __cpp_lib_erase_if 201900L
#if __cplusplus > 201703L
# define __cpp_lib_erase_if 201900L
#endif
namespace __detail
{

View File

@ -67,4 +67,8 @@
#include <bits/streambuf_iterator.h>
#include <bits/range_access.h>
#if __cplusplus >= 201402L && ! defined _GLIBCXX_DEBUG // PR libstdc++/70303
# define __cpp_lib_null_iterators 201304L
#endif
#endif /* _GLIBCXX_ITERATOR */

View File

@ -42,6 +42,10 @@
# define __cpp_lib_uncaught_exceptions 201411L
#endif
#if __cpp_impl_destroying_delete
# define __cpp_lib_destroying_delete 201806L
#endif
#if __cplusplus >= 201103L
// c++11
#define __cpp_lib_allocator_is_always_equal 201411
@ -71,6 +75,9 @@
#define __cpp_lib_is_final 201402L
#define __cpp_lib_make_reverse_iterator 201402
#define __cpp_lib_make_unique 201304
#ifndef _GLIBCXX_DEBUG // PR libstdc++/70303
# define __cpp_lib_null_iterators 201304L
#endif
#define __cpp_lib_quoted_string_io 201304
#define __cpp_lib_robust_nonmodifying_seq_ops 201304
#ifdef _GLIBCXX_HAS_GTHREADS