libstdc++: Adjust feature test in <istream> and <ostream>
We don't need any library concepts to define the constraints for rvalue stream overloads, only compiler support. So change the test from using __cpp_lib_concepts to __cpp_concepts >= 201907L. libstdc++-v3/ChangeLog: * include/std/istream (__rvalue_stream_extraction_t): Test __cpp_concepts instead of __cpp_lib_concepts. * include/std/ostream (__derived_from_ios_base): Likewise. (__rvalue_stream_insertion_t): Likewise.
This commit is contained in:
parent
f158bd511d
commit
17aca35c0e
2 changed files with 2 additions and 2 deletions
|
@ -1069,7 +1069,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
// 2328. Rvalue stream extraction should use perfect forwarding
|
||||
// 1203. More useful rvalue stream insertion
|
||||
|
||||
#if __cpp_lib_concepts
|
||||
#if __cpp_concepts >= 201907L
|
||||
template<typename _Is, typename _Tp>
|
||||
requires __derived_from_ios_base<_Is>
|
||||
&& requires (_Is& __is, _Tp&& __t) { __is >> std::forward<_Tp>(__t); }
|
||||
|
|
|
@ -763,7 +763,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
// _GLIBCXX_RESOLVE_LIB_DEFECTS
|
||||
// 1203. More useful rvalue stream insertion
|
||||
|
||||
#if __cpp_lib_concepts
|
||||
#if __cpp_concepts >= 201907L
|
||||
// Use concepts if possible because they're cheaper to evaluate.
|
||||
template<typename _Tp>
|
||||
concept __derived_from_ios_base = is_class_v<_Tp>
|
||||
|
|
Loading…
Add table
Reference in a new issue