From cbdd09b0ef47234e42a3f6d9133381c3d11f4b40 Mon Sep 17 00:00:00 2001 From: Brad Lewis <22850972+BradLewis@users.noreply.github.com> Date: Tue, 10 Feb 2026 14:50:36 +1100 Subject: Correctly resolve poly types from nested function calls that contain more than one return value --- tests/hover_test.odin | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'tests/hover_test.odin') diff --git a/tests/hover_test.odin b/tests/hover_test.odin index df65f3a..5dc6c91 100644 --- a/tests/hover_test.odin +++ b/tests/hover_test.odin @@ -6055,6 +6055,26 @@ ast_hover_union_multiple_poly :: proc(t: ^testing.T) { } test.expect_hover(t, &source, "test.Bazz :: union(T) {\n\tFoo(T),\n\tBar,\n}") } + +@(test) +ast_hover_poly_proc_passthrough :: proc(t: ^testing.T) { + source := test.Source { + main = `package test + make :: proc() -> (int, bool) { + return 1, true + } + + confirm_bool_one :: #force_inline proc(v: $T, ok: $B) -> (T, bool) { + return v, bool(ok) + } + + main :: proc() { + v{*}alue, ok := confirm_bool_one(make()) + } + `, + } + test.expect_hover(t, &source, "test.value: int") +} /* Waiting for odin fix -- cgit v1.2.3