Created on 2025-09-01.00:00:00 last changed 2 weeks 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); ... }; }
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-09-01 20:31:00 | admin | set | messages: + msg15012 |
2025-09-01 00:00:00 | admin | create |