aboutsummaryrefslogtreecommitdiff
path: root/src/server/clone.odin
diff options
context:
space:
mode:
authorBrad Lewis <22850972+BradLewis@users.noreply.github.com>2025-11-10 15:19:26 -0500
committerBrad Lewis <22850972+BradLewis@users.noreply.github.com>2025-11-10 15:19:26 -0500
commit311d46f0cda4c1228f8859e354d866dbee0ccb47 (patch)
tree81953a5c53e496edacd45717c9cd6c0a5da8d2f5 /src/server/clone.odin
parent980ccd16cc9baa2a73878b7bad028a53d22bb95f (diff)
Add missing expr that should be cloned and freed
Diffstat (limited to 'src/server/clone.odin')
-rw-r--r--src/server/clone.odin8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/server/clone.odin b/src/server/clone.odin
index d62f6de..215ab42 100644
--- a/src/server/clone.odin
+++ b/src/server/clone.odin
@@ -303,6 +303,14 @@ clone_node :: proc(node: ^ast.Node, allocator: mem.Allocator, unique_strings: ^m
append(&list, tokenizer.Token{text = strings.clone(t.text, allocator), kind = t.kind, pos = tokenizer.Pos{file = strings.clone(t.pos.file, allocator), offset = t.pos.offset, line = t.pos.line, column = t.pos.column}})
}
r.list = list[:]
+ case ^Auto_Cast:
+ r.expr = clone_type(r.expr, allocator, unique_strings)
+ case ^Or_Return_Expr:
+ r.expr = clone_type(r.expr, allocator, unique_strings)
+ case ^Matrix_Index_Expr:
+ r.expr = clone_type(r.expr, allocator, unique_strings)
+ r.row_index = clone_type(r.row_index, allocator, unique_strings)
+ r.column_index = clone_type(r.column_index, allocator, unique_strings)
case:
}