From 6573de43b7d395f5ff792e3b8e0d2aa8479bc07d Mon Sep 17 00:00:00 2001 From: Brad Lewis <22850972+BradLewis@users.noreply.github.com> Date: Wed, 22 Oct 2025 09:39:07 -0400 Subject: Clone and free Selector_Call_Expr --- src/server/ast.odin | 3 +++ src/server/clone.odin | 3 +++ 2 files changed, 6 insertions(+) diff --git a/src/server/ast.odin b/src/server/ast.odin index c695816..60e7d00 100644 --- a/src/server/ast.odin +++ b/src/server/ast.odin @@ -659,6 +659,9 @@ free_ast_node :: proc(node: ^ast.Node, allocator: mem.Allocator) { case ^Selector_Expr: free_ast(n.expr, allocator) free_ast(n.field, allocator) + case ^Selector_Call_Expr: + free_ast(n.expr, allocator) + free_ast(n.call, allocator) case ^Implicit_Selector_Expr: free_ast(n.field, allocator) case ^Index_Expr: diff --git a/src/server/clone.odin b/src/server/clone.odin index c215fc8..d62f6de 100644 --- a/src/server/clone.odin +++ b/src/server/clone.odin @@ -175,6 +175,9 @@ clone_node :: proc(node: ^ast.Node, allocator: mem.Allocator, unique_strings: ^m case ^Selector_Expr: r.expr = clone_type(r.expr, allocator, unique_strings) r.field = auto_cast clone_type(r.field, allocator, unique_strings) + case ^Selector_Call_Expr: + r.expr = clone_type(r.expr, allocator, unique_strings) + r.call = auto_cast clone_type(r.call, allocator, unique_strings) case ^Implicit_Selector_Expr: r.field = auto_cast clone_type(r.field, allocator, unique_strings) case ^Slice_Expr: -- cgit v1.2.3