Open
Description
[exec.stopped.opt]/para 3 reads:
- Let
sndr
andenv
be subexpressions such thatSndr
isdecltype((sndr))
andEnv
isdecltype((env))
. Ifsender-for<Sndr, stopped_as_optional_t>
isfalse
, or if the typesingle-sender-value-type<Sndr, Env>
is ill-formed orvoid
, then the expressionstopped_as_optional.transform_sender(sndr, env)
is ill-formed; otherwise, it is equivalent to:
the test for single-sender-value-type<Sndr, Env>
is incorrect. it should be testing its child for single-sender-ness.
In addition, it should be applying FWD-ENV-T
to Env
so that only forwarding queries are forwarded.
Proposed resolution
Change single-sender-value-type<Sndr, Env>
to single-sender-value-type<child-type<Sndr>, FWD-ENV-T(Env)>
in [exec.stopped.opt] para 2 (twice!), where FWD-ENV-T
is specified as in #313.