✓
Passing Passing: the compiler rejects this program as expected.
Code
// PINS: same law at the `#` anchor — `~#done(r: {...})` has a space, so the
// parser reads `done(r:` as a pre-invocation label name and refuses it as an
// unspellable identifier rather than registering a label no jump can name.
const std = @import("std");
~tor start {}
~proc start|zig {}
~#done(r: {a: 1, a: 2})
~start() |> @done(r: 1)
Actual compiler output
error[PARSE003]: malformed label declaration '#done(r:' — a label name is an identifier; arguments belong on the @jump, not the anchor
--> tests/regression/200_COMPILER_FEATURES/210_PARSER/210_299_label_decl_args_at_form/input.kz:9:1
|
9 | ~#done(r: {a: 1, a: 2})
| ^Frontend must reject with:
CONTAINS error[PARSE003]
CONTAINS malformed label declaration
ERROR_AT 9
NOT_CONTAINS output_emitted.zigFlows
flow ~start click a branch to expand · @labels scroll to their anchor
start
Test Configuration
MUST_ERROR