diff --git a/App/lib/core/Gen/Call/CallGenCall.vp b/App/lib/core/Gen/Call/CallGenCall.vp index e621d63..84c5cc0 100644 --- a/App/lib/core/Gen/Call/CallGenCall.vp +++ b/App/lib/core/Gen/Call/CallGenCall.vp @@ -398,7 +398,9 @@ novirtual class CallGenCall(CallGenBase.CallGenBase): while nn_pn is not None: nn_pc += 1 nn_pn = mlirlite.param_get_next(nn_pn) - if nn_pc > 1 and extra_count > nn_pc - 1: + # nn_pc == 1(只有注入的 self,如 `def __new__() -> 'Vec3' | CPtr`) + # 同样要裁:extra_count 归 0,只传 self。 + if nn_pc >= 1 and extra_count > nn_pc - 1: extra_count = nn_pc - 1 # 构建参数链表: self_ptr → extra_args...