libstdc++: Use __cpp_lib_concepts in std::reverse_iterator [PR104098]

We should not assume that std::iter_value_t etc. are defined
unconditionally for C++20 mode.

libstdc++-v3/ChangeLog:

	PR libstdc++/104098
	* include/bits/stl_iterator.h (reverse_iterator): Check
	__cpp_lib_concepts instead of __cplusplus.
This commit is contained in:
Jonathan Wakely 2022-01-18 15:34:24 +00:00
parent 302343d8dd
commit e13e95bd27

View File

@ -94,7 +94,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @{
*/
#if __cplusplus > 201703L && __cpp_lib_concepts
#if __cpp_lib_concepts
namespace __detail
{
// Weaken iterator_category _Cat to _Limit if it is derived from that,
@ -155,7 +155,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
public:
typedef _Iterator iterator_type;
typedef typename __traits_type::pointer pointer;
#if __cplusplus <= 201703L
#if ! __cpp_lib_concepts
typedef typename __traits_type::difference_type difference_type;
typedef typename __traits_type::reference reference;
#else