diff options
| -rw-r--r-- | src/server/ast.odin | 3 | ||||
| -rw-r--r-- | src/server/clone.odin | 3 |
2 files changed, 6 insertions, 0 deletions
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: |