From 8461a3da475689a7485123f2516252486510c443 Mon Sep 17 00:00:00 2001 From: TermiNexus Date: Mon, 19 Oct 2026 19:16:46 +0800 Subject: [PATCH] =?UTF-8?q?fix(viperc):=20typedef=20=E5=BC=BA=E8=BD=AC?= =?UTF-8?q?=E8=A1=A5=E5=85=85=20stdint/win32base=20=E8=A7=A3=E6=9E=90?= =?UTF-8?q?=E5=85=9C=E5=BA=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- App/lib/core/Gen/Call/CallGenDispatch.vp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/App/lib/core/Gen/Call/CallGenDispatch.vp b/App/lib/core/Gen/Call/CallGenDispatch.vp index c064e9b..e6ca04a 100644 --- a/App/lib/core/Gen/Call/CallGenDispatch.vp +++ b/App/lib/core/Gen/Call/CallGenDispatch.vp @@ -365,6 +365,14 @@ novirtual class CallGenDispatch(CallGenBase.CallGenBase): mod_imp_td = trans._imported_modules mod_fi_td = trans._from_imports mod_td_ty = self.Gen.TypeGenResolve.resolve_annotation_type(pool, mod_td_ast, mod_imp_td, mod_fi_td, trans, 0) + if mod_td_ty is None: + # Final fallback: the shared typedef resolver also scans stdint/win32base. + mod_imp_fb: str = None + mod_fi_fb: str = None + if trans is not None: + mod_imp_fb = trans._imported_modules + mod_fi_fb = trans._from_imports + mod_td_ty = self.Gen.TypeGenResolve.resolve_typedef_or_map(pool, func_name, mod_imp_fb, mod_fi_fb, trans) if mod_td_ty is not None and can == 1: mt_arg_val: mlirlite.Value* = self.Gen.ExprGen.translate_value(builder, pool, mod, cargs.get(0), funcs_ptr, func_count, trans, mod_td_ty) if mt_arg_val is not None: return self.Gen.CallGenCtor._translate_t_type_cast(pool, builder, mt_arg_val, mod_td_ty, cargs.get(0), trans)