[PATCH] libstdc++: Implement LWG 3557 change to convertible_to

Patrick Palka ppalka@redhat.com
Fri Jun 18 15:12:01 GMT 2021


libstdc++-v3/ChangeLog:

	* include/std/concepts (convertible_to): Just use declval as per
	LWG 3557.
---
 libstdc++-v3/include/std/concepts | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/libstdc++-v3/include/std/concepts b/libstdc++-v3/include/std/concepts
index 4490f534412..7f5421f1475 100644
--- a/libstdc++-v3/include/std/concepts
+++ b/libstdc++-v3/include/std/concepts
@@ -70,9 +70,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
   /// [concept.convertible], concept convertible_to
   template<typename _From, typename _To>
     concept convertible_to = is_convertible_v<_From, _To>
-      && requires(add_rvalue_reference_t<_From> (&__f)()) {
-	  static_cast<_To>(__f());
-      };
+      && requires { static_cast<_To>(std::declval<_From>()); };
 
   /// [concept.commonref], concept common_reference_with
   template<typename _Tp, typename _Up>
-- 
2.32.0.93.g670b81a890



More information about the Gcc-patches mailing list