aboutsummaryrefslogtreecommitdiff
path: root/boot/ast.cc
diff options
context:
space:
mode:
authorEugen Wissner <belka@caraus.de>2026-08-23 20:01:55 +0200
committerEugen Wissner <belka@caraus.de>2026-08-23 20:01:55 +0200
commit7d0d0eb69589ab8e0c8b036a3b642593a372b041 (patch)
treecf3731cec0ab67a0d574450fbe24c3cff4a7a9e6 /boot/ast.cc
parentbf41d022ce9736a92097f416ab96fca7ab4594ca (diff)
downloadelna-7d0d0eb69589ab8e0c8b036a3b642593a372b041.tar.gz
Determine array type by the first element
Diffstat (limited to 'boot/ast.cc')
-rw-r--r--boot/ast.cc11
1 files changed, 2 insertions, 9 deletions
diff --git a/boot/ast.cc b/boot/ast.cc
index 1f2b884..d4f015b 100644
--- a/boot/ast.cc
+++ b/boot/ast.cc
@@ -461,7 +461,6 @@ namespace elna::boot
void walking_visitor::visit(array_constructor_expression *expression)
{
- expression->array_type().accept(this);
for (auto *element : expression->elements)
{
element->accept(this);
@@ -844,8 +843,8 @@ namespace elna::boot
}
array_constructor_expression::array_constructor_expression(const source_position position,
- array_type_expression *element_type, std::vector<expression *>&& elements)
- : node(position), m_element_type(element_type), elements(std::move(elements))
+ std::vector<expression *>&& elements)
+ : node(position), elements(std::move(elements))
{
}
@@ -859,14 +858,8 @@ namespace elna::boot
return this;
}
- array_type_expression& array_constructor_expression::array_type() const
- {
- return *this->m_element_type;
- }
-
array_constructor_expression::~array_constructor_expression()
{
- delete this->m_element_type;
for (const expression *element : elements)
{
delete element;