From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2181) id DC9313847819; Thu, 16 Nov 2023 08:01:54 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org DC9313847819 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1700121714; bh=IFNr6YJH/k+iLu8vAAif5foUliH6h0t/oVjoMyS4hwY=; h=From:To:Subject:Date:From; b=STIebHlG45CcQEcJCWd+jzxgnuCZSeJ/RKLiANFZ3ZN6cyoa6IgALQqzNN0J7Uknz PfEsHBo1bhnjDa0rkD/if4Q0nUEXq2Na/t5xm9sqMlNR2Gu4TL4BgKCdvHj/x9AS0I RfQyM4hnByWk8JhjSdfDh0GAQ4rPiGjSt/Po/NqU= MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Jonathan Wakely To: gcc-cvs@gcc.gnu.org, libstdc++-cvs@gcc.gnu.org Subject: [gcc r14-5520] libstdc++: Adjust feature test in and X-Act-Checkin: gcc X-Git-Author: Jonathan Wakely X-Git-Refname: refs/heads/master X-Git-Oldrev: f158bd511df1f55ebbbc0df3dee52c4400291984 X-Git-Newrev: 17aca35c0ecd23de40c1352c0a7220bad3f11cfc Message-Id: <20231116080154.DC9313847819@sourceware.org> Date: Thu, 16 Nov 2023 08:01:54 +0000 (GMT) List-Id: https://gcc.gnu.org/g:17aca35c0ecd23de40c1352c0a7220bad3f11cfc commit r14-5520-g17aca35c0ecd23de40c1352c0a7220bad3f11cfc Author: Jonathan Wakely Date: Tue Nov 14 15:48:03 2023 +0000 libstdc++: Adjust feature test in and 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. Diff: --- libstdc++-v3/include/std/istream | 2 +- libstdc++-v3/include/std/ostream | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libstdc++-v3/include/std/istream b/libstdc++-v3/include/std/istream index 25d36973f4b..c2b30b75957 100644 --- a/libstdc++-v3/include/std/istream +++ b/libstdc++-v3/include/std/istream @@ -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 requires __derived_from_ios_base<_Is> && requires (_Is& __is, _Tp&& __t) { __is >> std::forward<_Tp>(__t); } diff --git a/libstdc++-v3/include/std/ostream b/libstdc++-v3/include/std/ostream index 5f973fa11ed..1de1c1bd359 100644 --- a/libstdc++-v3/include/std/ostream +++ b/libstdc++-v3/include/std/ostream @@ -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 concept __derived_from_ios_base = is_class_v<_Tp>