diff --git a/doc/langref/grammar.peg b/doc/langref/grammar.peg index dd0b92e9237f7946658c785b9e4e035049805535..ad2433cbffd70c7739aecd7ae1ad0c1ea1673854 100644 --- a/doc/langref/grammar.peg +++ b/doc/langref/grammar.peg @@ -249,7 +249,7 @@ AddrSpace <- KEYWORD_addrspace LPAREN Expr RPAREN # Fn specific CallConv <- KEYWORD_callconv LPAREN Expr RPAREN -ParamDecl <- doc_comment? (KEYWORD_noalias / KEYWORD_comptime / !KEYWORD_comptime) (IDENTIFIER COLON / !(IDENTIFIER COLON)) ParamType +ParamDecl <- doc_comment? (KEYWORD_noalias / KEYWORD_comptime?) (IDENTIFIER COLON)? ParamType ParamType <- KEYWORD_anytype diff --git a/lib/std/zig/parser_generated_oracle.zig b/lib/std/zig/parser_generated_oracle.zig index 73525a9d21be6895fee477a54e71c39a147d3f52..20366362b5c28029031d3e4c76da8ac5b60aefaf 100644 --- a/lib/std/zig/parser_generated_oracle.zig +++ b/lib/std/zig/parser_generated_oracle.zig @@ -1340,34 +1340,15 @@ const Parser = struct { const pos_2 = p.i; if (try p.parseKEYWORD_noalias()) break :blk_2 true; p.i = pos_2; - if (try p.parseKEYWORD_comptime()) break :blk_2 true; - p.i = pos_2; - if (blk_3: { - const pos_3 = p.i; - const match_3 = try p.parseKEYWORD_comptime(); - p.i = pos_3; - break :blk_3 !match_3; - }) break :blk_2 true; - p.i = pos_2; - break :blk_2 false; - } and blk_2: { - const pos_2 = p.i; - if (try p.parseIDENTIFIER() and try p.parseCOLON()) break :blk_2 true; - p.i = pos_2; - if (blk_3: { - const pos_3 = p.i; - const match_3 = blk_5: { - const pos_5 = p.i; - if (try p.parseIDENTIFIER() and try p.parseCOLON()) break :blk_5 true; - p.i = pos_5; - break :blk_5 false; - }; - p.i = pos_3; - break :blk_3 !match_3; - }) break :blk_2 true; + if ((try p.parseKEYWORD_comptime() or true)) break :blk_2 true; p.i = pos_2; break :blk_2 false; - } and try p.parseParamType()) break :blk_0 true; + } and (blk_3: { + const pos_3 = p.i; + if (try p.parseIDENTIFIER() and try p.parseCOLON()) break :blk_3 true; + p.i = pos_3; + break :blk_3 false; + } or true) and try p.parseParamType()) break :blk_0 true; p.i = pos_0; break :blk_0 false; };