aboutsummaryrefslogtreecommitdiff
path: root/boot/parser.yy
diff options
context:
space:
mode:
Diffstat (limited to 'boot/parser.yy')
-rw-r--r--boot/parser.yy6
1 files changed, 5 insertions, 1 deletions
diff --git a/boot/parser.yy b/boot/parser.yy
index b05b544..7797dd1 100644
--- a/boot/parser.yy
+++ b/boot/parser.yy
@@ -460,7 +460,11 @@ type_expression:
}
| "record" optional_fields "end"
{
- $$ = new boot::record_type_expression(boot::make_position(@1), std::move($2));
+ $$ = new boot::record_type_expression(boot::make_position(@1), std::move($2), std::nullopt);
+ }
+ | "record" "(" IDENTIFIER ")" optional_fields "end"
+ {
+ $$ = new boot::record_type_expression(boot::make_position(@1), std::move($5), std::move($3));
}
| "union" required_fields "end"
{