Define C++17 feature-test macros

* include/bits/allocator.h (__cpp_lib_incomplete_container_elements):
	Define feature-test macro.
	* include/bits/range_access.h (__cpp_lib_array_constexpr): Likewise.
	* include/std/shared_mutex (__cpp_lib_shared_mutex): Uncomment.
	* include/std/type_traits (__cpp_lib_logical_traits): Fix value.
	(__cpp_lib_type_trait_variable_templates): Define.

From-SVN: r239088
This commit is contained in:
Jonathan Wakely 2016-08-03 19:11:10 +01:00 committed by Jonathan Wakely
parent c1311c86c0
commit 068c8ac17c
5 changed files with 16 additions and 2 deletions

View File

@ -1,5 +1,12 @@
2016-08-03 Jonathan Wakely <jwakely@redhat.com>
* include/bits/allocator.h (__cpp_lib_incomplete_container_elements):
Define feature-test macro.
* include/bits/range_access.h (__cpp_lib_array_constexpr): Likewise.
* include/std/shared_mutex (__cpp_lib_shared_mutex): Uncomment.
* include/std/type_traits (__cpp_lib_logical_traits): Fix value.
(__cpp_lib_type_trait_variable_templates): Define.
* include/bits/stl_function.h: Remove commented-out macro.
* include/bits/stl_tree.h (__cpp_lib_generic_associative_lookup):
Define feature-test macro.

View File

@ -49,6 +49,8 @@
#include <type_traits>
#endif
#define __cpp_lib_incomplete_container_elements 201505
namespace std _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION

View File

@ -38,6 +38,10 @@ namespace std _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
#if __cplusplus >= 201402L
# define __cpp_lib_array_constexpr 201603L
#endif
/**
* @brief Return an iterator pointing to the first element of
* the container.

View File

@ -52,7 +52,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
#ifdef _GLIBCXX_HAS_GTHREADS
#if __cplusplus > 201402L
// TODO: #define __cpp_lib_shared_mutex 201505
#define __cpp_lib_shared_mutex 201505
class shared_mutex;
#endif

View File

@ -156,7 +156,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
#if __cplusplus > 201402L
#define __cpp_lib_logical_traits 201511
#define __cpp_lib_logical_traits 201510
template<typename... _Bn>
struct conjunction
@ -2763,6 +2763,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
#endif // __cplusplus >= 201402L
#if __cplusplus > 201402L
# define __cpp_lib_type_trait_variable_templates 201510L
template <typename _Tp>
constexpr bool is_void_v = is_void<_Tp>::value;
template <typename _Tp>