| ... | @@ -191,12 +191,11 @@ const Parser = struct { | ... | @@ -191,12 +191,11 @@ const Parser = struct { |
| 191 | return error.ParseError; | 191 | return error.ParseError; |
| 192 | } | 192 | } |
| 193 | | 193 | |
| 194 | /// ContainerMembers | 194 | /// ContainerMembers <- ContainerDeclarations (ContainerField COMMA)* (ContainerField / ContainerDeclarations) |
| 195 | /// <- TestDecl ContainerMembers | 195 | /// ContainerDeclarations |
| 196 | /// / TopLevelComptime ContainerMembers | 196 | /// <- TestDecl ContainerDeclarations |
| 197 | /// / KEYWORD_pub? TopLevelDecl ContainerMembers | 197 | /// / TopLevelComptime ContainerDeclarations |
| 198 | /// / ContainerField COMMA ContainerMembers | 198 | /// / KEYWORD_pub? TopLevelDecl ContainerDeclarations |
| 199 | /// / ContainerField | | |
| 200 | /// / | 199 | /// / |
| 201 | /// TopLevelComptime <- KEYWORD_comptime BlockExpr | 200 | /// TopLevelComptime <- KEYWORD_comptime BlockExpr |
| 202 | fn parseContainerMembers(p: *Parser) !Members { | 201 | fn parseContainerMembers(p: *Parser) !Members { |
| ... | @@ -774,7 +773,7 @@ const Parser = struct { | ... | @@ -774,7 +773,7 @@ const Parser = struct { |
| 774 | } | 773 | } |
| 775 | } | 774 | } |
| 776 | | 775 | |
| 777 | /// ContainerField <- KEYWORD_comptime? IDENTIFIER (COLON TypeExpr ByteAlign?)? (EQUAL Expr)? | 776 | /// ContainerField <- KEYWORD_comptime? IDENTIFIER (COLON (KEYWORD_anytype / TypeExpr) ByteAlign?)? (EQUAL Expr)? |
| 778 | fn expectContainerField(p: *Parser) !Node.Index { | 777 | fn expectContainerField(p: *Parser) !Node.Index { |
| 779 | const comptime_token = p.eatToken(.keyword_comptime); | 778 | const comptime_token = p.eatToken(.keyword_comptime); |
| 780 | const name_token = p.assertToken(.identifier); | 779 | const name_token = p.assertToken(.identifier); |