From 63cab96f533c20b804d9cccb184cd6e74440719b Mon Sep 17 00:00:00 2001 From: TermiNexus Date: Sat, 3 Oct 2026 15:20:33 +0800 Subject: [PATCH] =?UTF-8?q?fix(generictest2):=20=E5=8E=BB=E6=8E=89=20gener?= =?UTF-8?q?ic=5Fswap=20=E7=9A=84=E5=B9=BD=E7=81=B5=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?=E5=BD=A2=E5=8F=82=20[T]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit T 未被签名/函数体任何位置引用,签名形参注解为 IntPair | t.CPtr,泛型函数类型实参推断无法为它找到形参槽(_annotation_refers_type_param 返回 0),触发 fail-fast(禁止静默默认 int)。该函数本就不需要泛型,去掉 [T] 即语义正确。 --- GenericTest2/App/main.vp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GenericTest2/App/main.vp b/GenericTest2/App/main.vp index 3df610f..6298135 100644 --- a/GenericTest2/App/main.vp +++ b/GenericTest2/App/main.vp @@ -81,7 +81,7 @@ class IntPair: a: t.CInt b: t.CInt -def generic_swap[T](p: IntPair | t.CPtr): +def generic_swap(p: IntPair | t.CPtr): tmp: t.CInt = c.Deref(p).a c.Deref(p).a = c.Deref(p).b c.Deref(p).b = tmp