Commit c445602
committed
fix(exec): mark debug trial connects as root connects
With STDEXEC_ENABLE_EXTRA_TYPE_CHECKING=ON, the debug machinery's trial
connect uses a debug environment that, unlike every real connect root
(sync_wait, start_detached, start_now), did not answer the __root_t
query. on()'s transform_sender relies on that query to decide whether it
may fall back to an inline_scheduler when the environment has no
scheduler to restore, so senders like on(sch, closure) over just(...)
would trip __not_a_scheduler diagnostics during the extra type checking
of sequence pipelines.
The debug environment now includes __root_env, since the trial connect
it performs is genuinely a root connect. Additionally, __root_t is now a
forwarding query so that rootness survives environment adaptation such
as write_env, matching the semantics that a connect tree's root
property holds for every operation within it.
With this change, all sequence test files compile cleanly with
STDEXEC_ENABLE_EXTRA_TYPE_CHECKING=ON. Fixes #2274.1 parent c1ffca5 commit c445602
2 files changed
Lines changed: 5 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
78 | 78 | | |
79 | 79 | | |
80 | 80 | | |
81 | | - | |
| 81 | + | |
82 | 82 | | |
83 | 83 | | |
84 | 84 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
142 | 142 | | |
143 | 143 | | |
144 | 144 | | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
145 | 148 | | |
146 | 149 | | |
147 | 150 | | |
148 | | - | |
| 151 | + | |
149 | 152 | | |
150 | 153 | | |
151 | 154 | | |
| |||
0 commit comments