071 effect branch multifire void

✓ Passing This code compiles and runs correctly.

Code

// Test: multi-fire effect-branch pump, void event (no terminal).
//
// The producer loops and calls `tick(i)` three times. Consumer handles
// each `! tick` by printing. No `|` terminal — when the loop falls off,
// the proc returns implicit void. This is the "fire-and-forget pump"
// shape — single yielding kind, multi-fire, no completion signal.

~import "$std/io"

~pub event ticker { n: usize }
! tick usize

~proc ticker|zig {
    var i: usize = 0;
    while (i < n) : (i += 1) {
        tick(i);
    }
}

~ticker(n: 3)
! tick i |> std.io:print.blk {
    tick {{ i:d }}
}
input.kz

Actual

tick 0
tick 1
tick 2

Expected output

tick 0
tick 1
tick 2

Test Configuration

MUST_RUN