Created on 2025-09-01.00:00:00 last changed 5 days ago
Proposed resolution:
Add a default template argument of T to the template
parameter V of task::promise_type::return_value
in the synopsis of [task.promise]:
namespace std::execution {
template<class T, class Environment>
class task<T, Environment>::promise_type {
...
template<typename V = T>
void return_value(V&& value);
...
};
}
[ Kona 2025-11-08; Status changed: Voting → WP. ]
[ 2025-10-17; Reflector poll. ]
Set status to Tentatively Ready after five votes in favour during reflector poll.
The template parameter V of
task::promise_type::return_value doesn't have a default
template argument specified. Specifying a default template argument of T
would enable use of co_return { ... } which would be
consistent with normal return statements. This feature
was not discussed in the design paper but based on the LEWG discussion
on 2025-08-26 it is considered to be more a bug fix than a new feature.
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2025-11-11 10:48:16 | admin | set | status: voting -> wp |
| 2025-10-30 17:45:31 | admin | set | status: ready -> voting |
| 2025-10-27 09:58:11 | admin | set | messages: + msg15449 |
| 2025-10-17 14:12:23 | admin | set | messages: + msg15222 |
| 2025-10-17 14:12:23 | admin | set | status: new -> ready |
| 2025-09-01 20:31:00 | admin | set | messages: + msg15012 |
| 2025-09-01 00:00:00 | admin | create | |