aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorBradley Lewis <22850972+BradLewis@users.noreply.github.com>2025-08-12 20:19:25 -0400
committerGitHub <noreply@github.com>2025-08-12 20:19:25 -0400
commitd464ae4f65d41fa9abbac656cbfa804af3662162 (patch)
tree8d8097db47c4cea316e411a1a943640218466c99 /tests
parent5f1f9c190eca31d78280a9d17cc0dd973d5983c9 (diff)
parent2f08ec6e76d1825825cd6a5b9292b760782e00b4 (diff)
Merge pull request #870 from BradLewis/fix/type-definition-comp-lit
Fix go to type definition on a variable in a comp lit
Diffstat (limited to 'tests')
-rw-r--r--tests/type_definition_test.odin27
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/type_definition_test.odin b/tests/type_definition_test.odin
index c08df88..3e818bf 100644
--- a/tests/type_definition_test.odin
+++ b/tests/type_definition_test.odin
@@ -983,3 +983,30 @@ ast_type_definition_comp_lit_variable :: proc (t: ^testing.T) {
test.expect_type_definition_locations(t, &source, locations[:])
}
+
+@(test)
+ast_type_definition_variable_in_comp_lit :: proc (t: ^testing.T) {
+ source := test.Source {
+ main = `package test
+
+ Foo :: struct{}
+
+ Bar :: struct {
+ foo: Foo,
+ }
+
+ main :: proc() {
+ foo := Foo{}
+ bar := Bar {
+ foo = fo{*}o,
+ }
+ }
+ `,
+ }
+
+ locations := []common.Location {
+ {range = {start = {line = 2, character = 2}, end = {line = 2, character = 5}}},
+ }
+
+ test.expect_type_definition_locations(t, &source, locations[:])
+}