aboutsummaryrefslogtreecommitdiff
path: root/src/server
diff options
context:
space:
mode:
authorDanielGavin <danielgavin5@hotmail.com>2024-10-05 22:06:28 +0200
committerDanielGavin <danielgavin5@hotmail.com>2024-10-05 22:06:28 +0200
commita18728ada67d36958de97319b85defd940f3c2cd (patch)
tree4b8ce259180be526e079f60d18925d427d52f034 /src/server
parentca2b55c02d91f3df76c748686a72a42a62a7991a (diff)
Remember to set the call expression in ast_context when entering them in file resolve.
Diffstat (limited to 'src/server')
-rw-r--r--src/server/file_resolve.odin9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/server/file_resolve.odin b/src/server/file_resolve.odin
index 24a8f8c..a8fa894 100644
--- a/src/server/file_resolve.odin
+++ b/src/server/file_resolve.odin
@@ -320,7 +320,16 @@ resolve_node :: proc(node: ^ast.Node, data: ^FileResolveData) {
case ^Paren_Expr:
resolve_node(n.expr, data)
case ^Call_Expr:
+ old_call := data.ast_context.call
+
data.position_context.call = n
+ data.ast_context.call = n
+
+ defer {
+ data.position_context.call = old_call
+ data.ast_context.call = old_call
+ }
+
resolve_node(n.expr, data)
for arg in n.args {