Created on 2026-02-21.00:00:00 last changed 1 week ago
Proposed resolution:
This wording is relative to N5032.
In [task.promise] p2 replace monostate with an implementation-defined, default constructible type:
-2-error-variantis avariant<, with duplicate types removed, wheremonostateempty, remove_cvref_t<E>...>emptyis an implementation-defined, default constructible type andE...are the parameter types of the template arguments of the specialization ofexecution::completion_signaturesdenoted byerror_types.
[ 2026-02-27; Reflector discussion. ]
This issue seems to be resolved by 4339.
The current specification of the error-variant in [task.promise] p2 uses std::monostate as a placeholder for the absence of an error: variant<monostate, remove_cvref_t<E>...>. However, std::monostate can be an actual error type. It should be replaced by an implementation-defined, default constructible type.
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2026-02-27 16:05:19 | admin | set | messages: + msg15986 |
| 2026-02-22 08:33:43 | admin | set | messages: + msg15969 |
| 2026-02-21 00:00:00 | admin | create | |