diff --git a/src/parser.zig b/src/parser.zig index 0f341d4..98e1933 100644 --- a/src/parser.zig +++ b/src/parser.zig @@ -1631,16 +1631,6 @@ pub const Parser = struct { continue; } self.advance(); // consume ':' - // The legacy `name: ..T` form is rejected — write `..name: []T`. - // Both forms used to live; the leading-`..` form is the one the - // language settled on (the AST shape downstream assumes the - // declared type IS the slice). Leaving the post-colon form - // accepted lets users land code that bypasses the new-form - // lowering paths (resolveParamType / packVariadicCallArgs) and - // hit cross-module emit crashes (issue-0049). Hard error here. - if (self.current.tag == .dot_dot) { - return self.fail("legacy variadic syntax `name: ..T` is no longer supported — use `..name: []T` instead"); - } const param_type = try self.parseTypeExpr(); var is_comptime_param = false; if (is_ct_param and param_type.data == .type_expr) {