diff options
Diffstat (limited to 'src/server/file_resolve.odin')
| -rw-r--r-- | src/server/file_resolve.odin | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/server/file_resolve.odin b/src/server/file_resolve.odin index c526030..f381aac 100644 --- a/src/server/file_resolve.odin +++ b/src/server/file_resolve.odin @@ -1,3 +1,4 @@ +#+feature using-stmt package server import "core:odin/ast" @@ -58,7 +59,7 @@ resolve_ranged_file :: proc( if range.start.line - margin <= decl.end.line && decl.pos.line <= range.end.line + margin { resolve_decl(&position_context, &ast_context, document, decl, &symbols, .None, allocator) clear(&ast_context.locals) - } + } } return symbols @@ -512,6 +513,9 @@ resolve_node :: proc(node: ^ast.Node, data: ^FileResolveData) { data.position_context.struct_type = n resolve_node(n.poly_params, data) resolve_node(n.align, data) + for clause in n.where_clauses { + resolve_node(clause, data) + } resolve_node(n.fields, data) if data.flag != .None { |