✓
Passing Passing: the compiler rejects this program as expected.
Code
// PINS: `capture { ... }` seed is a Source-argument field list — a repeated `p`
// is refused by struct_literal's one-name rule, surfacing as KORU164 through
// the transform's own parse path, caret on the capture head line.
import std/io
pub tor tick { n: i64 }
tick = capture { p: 0[i64], p: 0[i64] }
! as st |> captured { p: st.m, m: st.p }
| captured r |> std/io:print.ln("{{ r.p:d }} {{ r.m:d }}")
tick(n: 1)
Actual compiler output
error[KORU164]: ~capture seed: field 'p' is bound twice — a field list takes each name once
--> tests/regression/200_COMPILER_FEATURES/210_PARSER/210_256_dup_field_capture_seed_refused/input.k:8:0Backend must reject with:
CONTAINS error[KORU164]
CONTAINS bound twice
ERROR_AT 8Flows
subflow ~tick click a branch to expand · @labels scroll to their anchor
capture (source: p: 0[i64], p: 0[i64])
flow ~tick click a branch to expand · @labels scroll to their anchor
tick (n: 1)
Test Configuration
MUST_ERROR