✓
Passing This code compiles and runs correctly.
Code
// Test 355_015: FRONTEND_COMPILE_ERROR — `|?` under an effect-only tor refuses.
//
// The spelling is judged before the callee's shape is: `|?` is not an
// arm no matter what the dispatch sits under. Here the effect arms are
// legitimate; the terminal catch-all line is the refusal.
~tor tokenize { source: string }
! token u32
! ?warn string
~proc tokenize|zig {
_ = source;
token(1);
}
~pub tor observe { name: string }
~proc observe|zig {
_ = name;
}
~tokenize(source: "x")
! token _ |> observe(name: "tok")
|? |> observe(name: "rest")
Must fail at frontend compile:
Parsing or type-checking must reject the program.
Error output must contain
catch-all continuations are not a thing