From f576e2ff0708744c7b25ced3b14b4ef7c28609b0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Dietmar=20K=C3=BChl?=
+Coroutines can't be copied. Thus, a
+In the synopsis in [task.class] add rvalue
+reference qualification to task::connect()task can be
+connect() just once. To represent that
+task::connect() should be rvalue reference qualified
+but currently it isn't.
+task::connect():
+
+
+namespace std::execution {
+ template<class T, class Environment>
+ class task {
+ ...
+ template<receiver Rcvr>
+ state<Rcvr> connect(Rcvr&& rcvr) &&;
+ ...
+ }
+}
+
+In the specification in [task.members] paragraph 3 add rvalue
+reference qualification to task::connect():
+
++ + + + From 887e1c0a8f14b1d3893f281a5a168ca9ff9ed869 Mon Sep 17 00:00:00 2001 From: Jonathan Wakely+template<receiver Rcvr> + state<Rcvr> connect(Rcvr&& rcvr) &&; ++-3- Precondition:
+bool(handle)istrue.-4- Effects: Equivalent to:
+return state<Rcvr>(exchange(handle, {}), std::forward<Rcvr>(recv));+
-In the synopsis in [task.class] add rvalue
+In the synopsis in task::connect():
namespace std::execution {
From abcbe4bceaafa758ca93e82b51162692ec83dab1 Mon Sep 17 00:00:00 2001
From: Jonathan Wakely
Date: Mon, 1 Sep 2025 18:04:11 +0100
Subject: [PATCH 3/4] Update xml/issue4341.xml
---
xml/issue4341.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/xml/issue4341.xml b/xml/issue4341.xml
index 95c916350e..ac26c60f3a 100644
--- a/xml/issue4341.xml
+++ b/xml/issue4341.xml
@@ -34,7 +34,7 @@ namespace std::execution {
-In the specification in [task.members] paragraph 3 add rvalue
+In the specification in task::connect():
From e5bc3456415f196f5bfeeef6b1a1d30c65241dc9 Mon Sep 17 00:00:00 2001 From: Jonathan WakelyDate: Mon, 1 Sep 2025 18:06:11 +0100 Subject: [PATCH 4/4] Update xml/issue4341.xml --- xml/issue4341.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xml/issue4341.xml b/xml/issue4341.xml index ac26c60f3a..555d64ad31 100644 --- a/xml/issue4341.xml +++ b/xml/issue4341.xml @@ -2,7 +2,7 @@ - >Missing rvalue reference qualification for +task::connect()Missing rvalue reference qualification for task::connect()Dietmar Kühl 31 Aug 2025