diff options
| -rw-r--r-- | src/server/completion.odin | 2 | ||||
| -rw-r--r-- | tests/completions_test.odin | 21 |
2 files changed, 23 insertions, 0 deletions
diff --git a/src/server/completion.odin b/src/server/completion.odin index e04963f..8e62e15 100644 --- a/src/server/completion.odin +++ b/src/server/completion.odin @@ -1222,6 +1222,8 @@ get_implicit_completion :: proc( } } } + + reset_ast_context(ast_context) } if position_context.index != nil { diff --git a/tests/completions_test.odin b/tests/completions_test.odin index f8b55f1..1389550 100644 --- a/tests/completions_test.odin +++ b/tests/completions_test.odin @@ -4052,3 +4052,24 @@ ast_completion_enum_global_array :: proc(t: ^testing.T) { test.expect_completion_details(t, &source, "", {"A", "B"}) } + +@(test) +ast_completion_enum_array_in_proc_param :: proc(t: ^testing.T) { + source := test.Source { + main = `package test + Foo :: enum { + A, + B, + } + + bar :: proc(v: i32) {} + + main :: proc() { + foos: [Foo]i32 + bar(foos[.{*}]) + } + `, + } + + test.expect_completion_details(t, &source, "", {"A", "B"}) +} |