From 3b9deb08d8da5d1db4e45c8ed68937b866553ab4 Mon Sep 17 00:00:00 2001 From: TermiNexus Date: Sun, 11 Oct 2026 10:00:05 +0800 Subject: [PATCH] =?UTF-8?q?fix(narrow):=20ClassGenEnum=20RenumClassVariant?= =?UTF-8?q?Counts=20=E5=85=83=E7=B4=A0=E8=AF=BB=E5=8F=96=E6=94=B9=E7=94=A8?= =?UTF-8?q?=20int(...)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit n_first_v(1029) 与 vcount(1010/1055) 承接 sizet* 元素,原先 64->32 隐式窄化;改用显式 int(...) 保持原截断语义 --- App/lib/core/Gen/Class/ClassGenEnum.vp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/App/lib/core/Gen/Class/ClassGenEnum.vp b/App/lib/core/Gen/Class/ClassGenEnum.vp index d91b021..4e89123 100644 --- a/App/lib/core/Gen/Class/ClassGenEnum.vp +++ b/App/lib/core/Gen/Class/ClassGenEnum.vp @@ -1007,7 +1007,7 @@ novirtual class ClassGenEnum(ClassGenBase.ClassGenBase): if variant_name is None or self.RenumClassNames is None: return None for i in range(self.RenumClassCount): - vcount: int = self.RenumClassVariantCounts[i] + vcount: int = int(self.RenumClassVariantCounts[i]) for j in range(vcount): name_offset: sizet = i * RENUM_VARIANT_PER_CLASS + j vname: str = str(self.RenumVariantNames[name_offset]) @@ -1026,7 +1026,7 @@ novirtual class ClassGenEnum(ClassGenBase.ClassGenBase): if self.RenumClassNames is not None and self.RenumClassCount > 0: cls_first = str(self.RenumClassNames[0]) if self.RenumVariantNames is not None and self.RenumClassVariantCounts is not None: - n_first_v = self.RenumClassVariantCounts[0] + n_first_v = int(self.RenumClassVariantCounts[0]) if n_first_v > 0: v_first = str(self.RenumVariantNames[0]) viperlib.snprintf(buf, 256, "count=%d first=%s vcount=%d vfirst=%s", self.RenumClassCount, cls_first, n_first_v, v_first) return buf @@ -1052,7 +1052,7 @@ novirtual class ClassGenEnum(ClassGenBase.ClassGenBase): for i in range(self.RenumClassCount): existing: str = str(self.RenumClassNames[i]) if existing is None or string.strcmp(existing, class_name) != 0: continue - vcount: int = self.RenumClassVariantCounts[i] + vcount: int = int(self.RenumClassVariantCounts[i]) for j in range(vcount): name_offset: sizet = i * RENUM_VARIANT_PER_CLASS + j vname: str = str(self.RenumVariantNames[name_offset])