✓
Passing This code compiles and runs correctly.
Code
// `for` as a void effect pump: `! each` fires per iteration, NO terminal branch
// (no `| done`, no count — that would be pay-for-nothing on every loop). The
// iterable is template-substituted into the Zig `for`; the body calls the
// `! each` handler symbol. This is the real shape of the `for` we're building —
// 400_071 (effect_branch_multifire_void) proves the void-pump shape works; the
// only delta here is the templated iterable.
~import std/io
~pub event loop { r: i32 }
! each usize
~proc loop|template|zig {
for ({{ r }}) |item| {
each(item);
}
}
~loop(r: 0..3)
! each v |> std/io:print.blk {
v {{ v:d }}
}
Actual
v 0
v 1
v 2
Expected output
v 0
v 1
v 2
Test Configuration
MUST_RUN