fix(SysLibTest): CDefine 大整数全链路 64 位化 + Win32 结构体 ULONG→DWORD

- maxsize=9223372036854775807 曾全链路 32 位截断成 4294967295:
  StubGen/Converter 与 register_cdefine_constant 改 %lld、lookup 改
  atoll、extract_cdefine_int_value/_lookup_cross_module_cdefine 改
  CInt64T,新增 _const_int_for_cdefine(超 0xFFFFFFFF 才升 i64,
  0xFFFFFFFF 保持 i32 -1 语义)
- subprocess stdout 为空根因 STARTUPINFOA/PROCESS_INFORMATION/
  MEMORY_BASIC_INFORMATION ULONG 字段(i64 占 8 字节)布局错位致
  CreateProcess 读不到 STARTF_USESTDHANDLES,改 DWORD 对齐 Windows 布局
- 移除 syslibtest_impl.vp 调试 DBG 标记
This commit is contained in:
TermiNexus committed 2026-08-15 13:11:25 +08:00
1 parent 5844e6e725
commit 396e0a54be
5 files changed
+49 -49

No files matched your search

+3 -3
View File
@@ -21,15 +21,15 @@ ERROR_ACCESS_DENIED: t.CDefine = 5
ERROR_INSUFFICIENT_BUFFER: t.CDefine = 122
class SECURITY_ATTRIBUTES():
nLength: ULONG
nLength: DWORD
lpSecurityDescriptor: VOIDPTR
bInheritHandle: BOOL
class OVERLAPPED():
Internal: ULONGLONG
InternalHigh: ULONGLONG
Offset: ULONG
OffsetHigh: ULONG
Offset: DWORD
OffsetHigh: DWORD
hEvent: HANDLE
class FILETIME():
+5 -5
View File
@@ -50,7 +50,7 @@ class CONSOLE_SCREEN_BUFFER_INFO():
dwMaximumWindowSize: COORD
class CONSOLE_CURSOR_INFO():
dwSize: ULONG
dwSize: DWORD
bVisible: BOOL
class CHAR_INFO():
@@ -63,13 +63,13 @@ class KEY_EVENT_RECORD():
wVirtualKeyCode: WORD
wVirtualScanCode: WORD
uChar: WCHAR
dwControlKeyState: ULONG
dwControlKeyState: DWORD
class MOUSE_EVENT_RECORD():
dwMousePosition: COORD
dwButtonState: ULONG
dwControlKeyState: ULONG
dwEventFlags: ULONG
dwButtonState: DWORD
dwControlKeyState: DWORD
dwEventFlags: DWORD
class WINDOW_BUFFER_SIZE_RECORD():
dwSize: COORD
+17 -17
View File
@@ -50,38 +50,38 @@ MOVEFILE_COPY_ALLOWED: t.CDefine = 0x00000002
MOVEFILE_WRITE_THROUGH: t.CDefine = 0x00000008
class BY_HANDLE_FILE_INFORMATION():
dwFileAttributes: ULONG
dwFileAttributes: DWORD
ftCreationTime: FILETIME
ftLastAccessTime: FILETIME
ftLastWriteTime: FILETIME
dwVolumeSerialNumber: ULONG
nFileSizeHigh: ULONG
nFileSizeLow: ULONG
nNumberOfLinks: ULONG
nFileIndexHigh: ULONG
nFileIndexLow: ULONG
dwVolumeSerialNumber: DWORD
nFileSizeHigh: DWORD
nFileSizeLow: DWORD
nNumberOfLinks: DWORD
nFileIndexHigh: DWORD
nFileIndexLow: DWORD
class WIN32_FIND_DATAA():
dwFileAttributes: ULONG
dwFileAttributes: DWORD
ftCreationTime: FILETIME
ftLastAccessTime: FILETIME
ftLastWriteTime: FILETIME
nFileSizeHigh: ULONG
nFileSizeLow: ULONG
dwReserved0: ULONG
dwReserved1: ULONG
nFileSizeHigh: DWORD
nFileSizeLow: DWORD
dwReserved0: DWORD
dwReserved1: DWORD
cFileName: t.CArray[t.CChar, 260]
cAlternateFileName: t.CArray[t.CChar, 14]
class WIN32_FIND_DATAW():
dwFileAttributes: ULONG
dwFileAttributes: DWORD
ftCreationTime: FILETIME
ftLastAccessTime: FILETIME
ftLastWriteTime: FILETIME
nFileSizeHigh: ULONG
nFileSizeLow: ULONG
dwReserved0: ULONG
dwReserved1: ULONG
nFileSizeHigh: DWORD
nFileSizeLow: DWORD
dwReserved0: DWORD
dwReserved1: DWORD
cFileName: t.CArray[t.CUInt16T, 260]
cAlternateFileName: t.CArray[t.CUInt16T, 14]
+4 -4
View File
@@ -34,11 +34,11 @@ HEAP_REALLOC_IN_PLACE_ONLY: t.CDefine = 0x00000010
class MEMORY_BASIC_INFORMATION():
BaseAddress: VOIDPTR
AllocationBase: VOIDPTR
AllocationProtect: ULONG
AllocationProtect: DWORD
RegionSize: t.CSizeT
State: ULONG
Protect: ULONG
Type: ULONG
State: DWORD
Protect: DWORD
Type: DWORD
def VirtualAlloc(lpAddress: VOIDPTR, dwSize: t.CSizeT, flAllocationType: ULONG, flProtect: ULONG) -> VOIDPTR | t.State: pass
def VirtualFree(lpAddress: VOIDPTR, dwSize: t.CSizeT, dwFreeType: ULONG) -> BOOL | t.State: pass
+20 -20
View File
@@ -40,18 +40,18 @@ ABOVE_NORMAL_PRIORITY_CLASS: t.CDefine = 0x00008000
STILL_ACTIVE: t.CDefine = 259
class STARTUPINFOA():
cb: ULONG
cb: DWORD
lpReserved: CHARPTR
lpDesktop: CHARPTR
lpTitle: CHARPTR
dwX: ULONG
dwY: ULONG
dwXSize: ULONG
dwYSize: ULONG
dwXCountChars: ULONG
dwYCountChars: ULONG
dwFillAttribute: ULONG
dwFlags: ULONG
dwX: DWORD
dwY: DWORD
dwXSize: DWORD
dwYSize: DWORD
dwXCountChars: DWORD
dwYCountChars: DWORD
dwFillAttribute: DWORD
dwFlags: DWORD
wShowWindow: WORD
cbReserved2: WORD
lpReserved2: VOIDPTR
@@ -60,18 +60,18 @@ class STARTUPINFOA():
hStdError: HANDLE
class STARTUPINFOW():
cb: ULONG
cb: DWORD
lpReserved: WCHARPTR
lpDesktop: WCHARPTR
lpTitle: WCHARPTR
dwX: ULONG
dwY: ULONG
dwXSize: ULONG
dwYSize: ULONG
dwXCountChars: ULONG
dwYCountChars: ULONG
dwFillAttribute: ULONG
dwFlags: ULONG
dwX: DWORD
dwY: DWORD
dwXSize: DWORD
dwYSize: DWORD
dwXCountChars: DWORD
dwYCountChars: DWORD
dwFillAttribute: DWORD
dwFlags: DWORD
wShowWindow: WORD
cbReserved2: WORD
lpReserved2: VOIDPTR
@@ -82,8 +82,8 @@ class STARTUPINFOW():
class PROCESS_INFORMATION():
hProcess: HANDLE
hThread: HANDLE
dwProcessId: ULONG
dwThreadId: ULONG
dwProcessId: DWORD
dwThreadId: DWORD
def CreateProcessA(lpApplicationName: LPCSTR, lpCommandLine: CHARPTR, lpProcessAttributes: SECURITY_ATTRIBUTES | t.CPtr, lpThreadAttributes: SECURITY_ATTRIBUTES | t.CPtr, bInheritHandles: BOOL, dwCreationFlags: ULONG, lpEnvironment: VOIDPTR, lpCurrentDirectory: LPCSTR, lpStartupInfo: STARTUPINFOA | t.CPtr, lpProcessInformation: PROCESS_INFORMATION | t.CPtr) -> BOOL | t.State: pass
def CreateProcessW(lpApplicationName: LPCWSTR, lpCommandLine: WCHARPTR, lpProcessAttributes: SECURITY_ATTRIBUTES | t.CPtr, lpThreadAttributes: SECURITY_ATTRIBUTES | t.CPtr, bInheritHandles: BOOL, dwCreationFlags: ULONG, lpEnvironment: VOIDPTR, lpCurrentDirectory: LPCWSTR, lpStartupInfo: STARTUPINFOW | t.CPtr, lpProcessInformation: PROCESS_INFORMATION | t.CPtr) -> BOOL | t.State: pass