✓
Passing This code compiles and runs correctly.
Code
// Pins: a variant tag belongs on a `proc`, never on the `tor` that declares
// the contract. `tor compute|zig {}` must be rejected at the frontend — the
// tor names WHAT is done, the proc's `|zig` names HOW and for which target.
//
// The guarded shape is the identifier boundary: `|` terminates a tor's name
// rather than being absorbed into it. Absorbing it mints a declaration named
// `compute|zig`, which no `proc compute|zig` and no `compute()` call site
// can ever match, so one construct ends up with three different spellings and
// the frontend has nothing left to disagree with.
//
// Doctrine: variants live on procs only (`proc name|target`).
~tor compute|zig {}
Frontend must reject with:
ERROR_AT 12