aboutsummaryrefslogtreecommitdiff
path: root/boot
diff options
context:
space:
mode:
authorEugen Wissner <belka@caraus.de>2026-10-28 23:47:15 +0100
committerEugen Wissner <belka@caraus.de>2026-10-28 23:47:15 +0100
commitd54b7d86beff8bb91e204e56a7ec01d3ab8ca43c (patch)
treec24c4c8962f7b3c4fc79b107d5d0928bdc63c491 /boot
parent9f85fa784927f5b6ff07ce043eb46a3e9236760f (diff)
downloadelna-d54b7d86beff8bb91e204e56a7ec01d3ab8ca43c.tar.gz
Fix type checker traversal for record and array literals
Diffstat (limited to 'boot')
-rw-r--r--boot/type_check.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/boot/type_check.cc b/boot/type_check.cc
index 2f15462..14a5099 100644
--- a/boot/type_check.cc
+++ b/boot/type_check.cc
@@ -1457,6 +1457,7 @@ namespace elna::boot
void type_analysis_visitor::visit(record_constructor_expression *expression)
{
+ walking_visitor::visit(expression);
const std::shared_ptr<record_type> record = erase_generic(expression->type_decoration).get<record_type>();
if (record == nullptr)
@@ -1484,6 +1485,7 @@ namespace elna::boot
void type_analysis_visitor::visit(array_constructor_expression *expression)
{
+ walking_visitor::visit(expression);
const std::shared_ptr<array_type> array =
resolve_underlying_type(expression->type_decoration).get<array_type>();