✓
Passing Passing: the compiler rejects this program as expected.
Code
// PINS: `[transform]` without `[comptime]` is refused at the declaration.
//
// - [comptime] declares WHERE: the tor emits into the backend.
// - [transform] declares WHAT: a transformation intent.
//
// Both are required. With only [transform], the tor is never registered as a
// pass, so every call site silently does nothing — the shape this wall exists
// to make loud.
~[transform]tor badTransform { count: i32 } -> (result: i32)
~proc badTransform|zig {
return .{ .result = count * 2 };
}
Actual compiler output
error[PARSE003]: tor 'badTransform' has [transform] but is missing [comptime] — [transform] declares the intent, [comptime] is what emits the pass; without both the transform is never registered and every call site silently does nothing
--> tests/regression/200_COMPILER_FEATURES/210_PARSER/210_029_transform_requires_comptime/input.kz:10:1
|
10 | ~[transform]tor badTransform { count: i32 } -> (result: i32)
| ^Frontend must reject with:
CONTAINS error[PARSE003]
CONTAINS has [transform] but is missing [comptime]Test Configuration
MUST_ERROR COMPILE_ONLY