Files
TransPyC/regression_output.txt

1711 lines
115 KiB
Plaintext

======================================================================
TransPyC 回归测试
======================================================================
发现 45 个测试项目
======================================================================
阶段一:编译所有项目
======================================================================
[1/45] 编译 ArgparseTest ... 通过 (7.9s)
[2/45] 编译 AstTest ... 失败 (42.8s)
[3/45] 编译 BuddyTest ... 通过 (8.0s)
[4/45] 编译 BuiltinDecoratorTest ... 通过 (5.9s)
[5/45] 编译 CPythonTest ... 通过 (8.8s)
[6/45] 编译 ClosureTest ... 通过 (5.0s)
[7/45] 编译 ClosureTest2 ... 通过 (5.4s)
[8/45] 编译 DecoratorMarkerTest ... 通过 (5.2s)
[9/45] 编译 DecoratorTest ... 通过 (6.8s)
[10/45] 编译 DictTest ... 失败 (10.9s)
[11/45] 编译 DocTest ... 通过 (5.6s)
[12/45] 编译 EdgeCaseTest ... 通过 (3.9s)
[13/45] 编译 EqTest ... 通过 (3.9s)
[14/45] 编译 FakeDuckTest ... 失败 (7.2s)
[15/45] 编译 ForAndLoopTest ... 通过 (5.0s)
[16/45] 编译 FormatStringTest ... 通过 (4.4s)
[17/45] 编译 FuncTest ... 通过 (4.7s)
[18/45] 编译 GenericTest ... 通过 (4.4s)
[19/45] 编译 GenericTest2 ... 通过 (4.8s)
[20/45] 编译 HashTableTest ... 通过 (5.1s)
[21/45] 编译 IterTest ... 通过 (4.8s)
[22/45] 编译 JsonTest ... 失败 (6.6s)
[23/45] 编译 LLvmLiteTest ... 通过 (21.8s)
[24/45] 编译 ListTest ... 通过 (4.2s)
[25/45] 编译 LoopTest ... 通过 (4.4s)
[26/45] 编译 MemhubTest ... 通过 (4.5s)
[27/45] 编译 NewAstTest ... 通过 (24.1s)
[28/45] 编译 NoVTableTest ... 通过 (3.5s)
[29/45] 编译 PointerTest ... 通过 (4.3s)
[30/45] 编译 ShortCircuitTest ... 通过 (4.9s)
[31/45] 编译 SimdTest ... 失败 (13.1s)
[32/45] 编译 SprintfTest ... 通过 (4.8s)
[33/45] 编译 StringIterTest ... 通过 (4.8s)
[34/45] 编译 StringTest ... 通过 (4.6s)
[35/45] 编译 StructTest ... 通过 (4.9s)
[36/45] 编译 SysLibTest ... 通过 (9.7s)
[37/45] 编译 TestFBProject ... 通过 (4.5s)
[38/45] 编译 TestProject ... 失败 (14.8s)
[39/45] 编译 TestProject2 ... 失败 (12.1s)
[40/45] 编译 TestProject3 ... 通过 (12.0s)
[41/45] 编译 TypeCastTest ... 通过 (8.1s)
[42/45] 编译 VRandomTest ... 通过 (9.5s)
[43/45] 编译 VariadicTest ... 通过 (7.8s)
[44/45] 编译 WebTest ... 通过 (9.4s)
[45/45] 编译 ZlibTest ... 通过 (10.0s)
编译阶段: 通过 38, 失败 7
======================================================================
阶段二:运行所有可执行文件
======================================================================
找到 38 个可执行文件
ArgparseTest: 通过
BuddyTest: 通过
BuiltinDecoratorTest: 通过
CPythonTest: 通过
ClosureTest: 通过
ClosureTest2: 通过
DecoratorMarkerTest: 通过
DecoratorTest: 通过
DocTest: 通过
EdgeCaseTest: 通过
EqTest: 通过
ForAndLoopTest: 通过
FormatStringTest: 通过
FuncTest: 通过
GenericTest: 通过
GenericTest2: 通过
HashTableTest: 通过
IterTest: 通过
LLvmLiteTest: 失败
ListTest: 通过
LoopTest: 通过
MemhubTest: 通过
NewAstTest: 通过
NoVTableTest: 通过
PointerTest: 通过
ShortCircuitTest: 通过
SprintfTest: 通过
StringIterTest: 通过
StringTest: 通过
StructTest: 失败
SysLibTest: 通过
TestFBProject: 通过
TestProject3: 通过
TypeCastTest: 通过
VRandomTest: 通过
VariadicTest: 通过
WebTest: 通过
ZlibTest: 通过
运行阶段: 通过 36, 失败 2
======================================================================
回归测试报告
======================================================================
总计: 45 通过: 36 失败: 9
----------------------------------------------------------------------
失败项目详情:
----------------------------------------------------------------------
【AstTest】编译失败
... (省略前 4 行) ...
├ INFO: 输出目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\AstTest\output
├ INFO: 阶段: all
├ INFO: 编译器: llc -filetype=obj -relocation-model=pic
├ INFO: 目标三元组: x86_64-pc-windows-gnu
├ INFO: 数据布局: e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128
├ INFO: output: 已清空 D:\Users\TermiNexus\Desktop\TransPyC\Test\AstTest\output
├ INFO: temp: 已清空 D:\Users\TermiNexus\Desktop\TransPyC\Test\AstTest\temp
├ INFO: 清理完成
├ INFO: 找到 1 个可达源文件(从入口遍历)
├ INFO: [1/1] 生成签名: main.py
├ INFO: -> 0853acdbdfc9b27c.pyi (签名)
├ INFO: 处理 24 个被引用的 Python 库文件
├ INFO: 生成签名: ast\__init__.py -> 34548789d646f432.pyi
├ INFO: 生成签名: ast\astaux.py -> 4337fb260448bbe2.pyi
├ INFO: 生成签名: ast\base.py -> 5dab8cb390496d22.pyi
├ INFO: 生成签名: ast\exprs.py -> 47767b5026a8ee15.pyi
├ INFO: 生成签名: ast\lexer.py -> 0c212981c180e7fb.pyi
├ INFO: 生成签名: ast\match.py -> 4dd6b3f1427d1cc5.pyi
├ INFO: 生成签名: ast\parser.py -> ee52c08239684346.pyi
├ INFO: 生成签名: ast\stmts.py -> 657e182b27c2a022.pyi
├ INFO: 生成签名: ast\tokens.py -> b547ac4f380bddb6.pyi
├ INFO: 缓存命中(全局): atom.py -> 271ea3decb810db2.pyi
├ INFO: 缓存命中(全局): memhub.py -> f3560b99de458aec.pyi
├ INFO: 生成签名: platmacro.py -> 93c1d18e35d188d6.pyi
├ INFO: 生成签名: posix.py -> 6503c97dde0c79c4.pyi
├ INFO: 生成签名: stdarg.py -> 71e0a3ffcb3ebfad.pyi
├ INFO: 缓存命中(全局): stdint.py -> f5522571bcce7bcb.pyi
├ INFO: 缓存命中(全局): stdio.py -> 6f62fe05c5ea1ceb.pyi
├ INFO: 缓存命中(全局): stdlib.py -> 90c53dd6db8d41cf.pyi
├ INFO: 缓存命中(全局): string.py -> 9474791561654346.pyi
├ INFO: 生成签名: sys.py -> b5a965302cded36b.pyi
├ INFO: 缓存命中(全局): viperio.py -> c9f4be41ca1cc2b4.pyi
├ INFO: 生成签名: viperlib.py -> c3b259b4059f8668.pyi
├ INFO: 缓存命中(全局): w32\win32base.py -> 7e529fe7a078cfef.pyi
├ INFO: 缓存命中(全局): w32\win32console.py -> bbdf3bbd4c3bc28c.pyi
├ INFO: 缓存命中(全局): w32\win32process.py -> 067c78e9f121dce3.pyi
├ INFO: 结构体注册表: 103 个类型, 7 个枚举
├ INFO: -> 0853acdbdfc9b27c.stub.ll (声明)
├ INFO: 生成声明: ast\__init__.py -> 34548789d646f432.stub.ll
├ INFO: 生成声明: ast\astaux.py -> 4337fb260448bbe2.stub.ll
├ INFO: 生成声明: ast\base.py -> 5dab8cb390496d22.stub.ll
├ INFO: 生成声明: ast\exprs.py -> 47767b5026a8ee15.stub.ll
├ INFO: 生成声明: ast\lexer.py -> 0c212981c180e7fb.stub.ll
├ INFO: 生成声明: ast\match.py -> 4dd6b3f1427d1cc5.stub.ll
├ INFO: 生成声明: ast\parser.py -> ee52c08239684346.stub.ll
├ INFO: 生成声明: ast\stmts.py -> 657e182b27c2a022.stub.ll
├ INFO: 生成声明: ast\tokens.py -> b547ac4f380bddb6.stub.ll
├ INFO: 缓存命中(全局): atom.py -> 271ea3decb810db2.stub.ll
├ INFO: 缓存命中(全局): memhub.py -> f3560b99de458aec.stub.ll
├ INFO: 生成声明: platmacro.py -> 93c1d18e35d188d6.stub.ll
├ INFO: 生成声明: posix.py -> 6503c97dde0c79c4.stub.ll
├ INFO: 生成声明: stdarg.py -> 71e0a3ffcb3ebfad.stub.ll
├ INFO: 缓存命中(全局): stdint.py -> f5522571bcce7bcb.stub.ll
├ INFO: 缓存命中(全局): stdio.py -> 6f62fe05c5ea1ceb.stub.ll
├ INFO: 缓存命中(全局): stdlib.py -> 90c53dd6db8d41cf.stub.ll
├ INFO: 缓存命中(全局): string.py -> 9474791561654346.stub.ll
├ INFO: 生成声明: sys.py -> b5a965302cded36b.stub.ll
├ INFO: 缓存命中(全局): viperio.py -> c9f4be41ca1cc2b4.stub.ll
├ INFO: 生成声明: viperlib.py -> c3b259b4059f8668.stub.ll
├ INFO: 缓存命中(全局): w32\win32base.py -> 7e529fe7a078cfef.stub.ll
├ INFO: 缓存命中(全局): w32\win32console.py -> bbdf3bbd4c3bc28c.stub.ll
├ INFO: 生成声明: w32\win32process.py -> 067c78e9f121dce3.stub.ll
├ SUCCESS: 声明接口生成到: D:\Users\TermiNexus\Desktop\TransPyC\Test\AstTest\temp
├ INFO: SHA1 映射表 (25 个文件):
├ INFO: 找到 1 个可达源文件(已按依赖排序)
├ INFO: 处理顺序:
├ INFO: 1. main.py
├ INFO: 过滤旧文件: stub 29->25, sig 42->25
├ INFO: [缓存] 构建共享符号表数据...
├ INFO: [缓存] 共享符号表构建完成 (0.72s, 2373 符号, 5 泛型模板, 10 doc 元数据)
├ INFO:
需要翻译 1 个文件
├ INFO: -> 0853acdbdfc9b27c.ll
├ INFO: [1/1] main.py (2.2s)
├ INFO: 翻译总耗时: 2.2s
├ INFO:
[阶段二完成] .ll 文件生成到: D:\Users\TermiNexus\Desktop\TransPyC\Test\AstTest\output
├ INFO: [includes] 发现 Python 源文件: stdint.py
├ INFO: [includes] 发现 Python 源文件: sys.py
├ INFO: [includes] 发现 Python 源文件: string.py
├ INFO: [includes] 发现 Python 包文件: w32\fileio.py
├ INFO: [includes] 发现 Python 包文件: w32\win32base.py
├ INFO: [includes] 发现 Python 包文件: w32\win32console.py
├ INFO: [includes] 发现 Python 包文件: w32\win32file.py
├ INFO: [includes] 发现 Python 包文件: w32\win32memory.py
├ INFO: [includes] 发现 Python 包文件: w32\win32process.py
├ INFO: [includes] 发现 Python 包文件: w32\win32sync.py
├ INFO: [includes] 发现 Python 包文件: w32\winsock2.py
├ INFO: [includes] 发现 Python 包文件: ast\astaux.py
├ INFO: [includes] 发现 Python 包文件: ast\base.py
├ INFO: [includes] 发现 Python 包文件: ast\exprs.py
├ INFO: [includes] 发现 Python 包文件: ast\lexer.py
├ INFO: [includes] 发现 Python 包文件: ast\match.py
├ INFO: [includes] 发现 Python 包文件: ast\parser.py
├ INFO: [includes] 发现 Python 包文件: ast\stmts.py
├ INFO: [includes] 发现 Python 包文件: ast\tokens.py
├ INFO: [includes] 发现 Python 包文件: ast\__init__.py
├ INFO: [includes] 发现 Python 源文件: memhub.py
├ INFO: [includes] 发现 Python 源文件: stdio.py
├ INFO: [includes] 发现 Python 源文件: stdlib.py
├ INFO: [includes] 发现间接依赖: platmacro.py
├ INFO: [includes] 发现间接依赖: posix.py
├ INFO: [includes] 发现间接依赖: viperlib.py
├ INFO: [includes] 发现间接依赖: viperio.py
├ INFO: [includes] 发现间接依赖: stdarg.py
├ INFO: [includes] 发现间接依赖: atom.py
├ INFO:
[includes 编译] 找到 29 个 Python 源文件
├ INFO: 跳过(预编译): atom.py -> 271ea3decb810db2.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(声明文件): platmacro.py
├ INFO: 跳过(声明文件): stdarg.py
├ INFO: 跳过(声明文件): stdint.py
├ INFO: 跳过(声明文件): stdio.py
├ INFO: 跳过(声明文件): stdlib.py
├ INFO: 跳过(预编译): string.py -> 9474791561654346.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): viperio.py -> c9f4be41ca1cc2b4.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): memhub.py -> f3560b99de458aec.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32base.py -> 7e529fe7a078cfef.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32console.py -> bbdf3bbd4c3bc28c.x86_64-pc-windows-gnu.pic.obj
├ INFO: 翻译 18 个文件
├ INFO: -> 6503c97dde0c79c4.ll
├ INFO: [1/18] 翻译完成: posix.py
├ INFO: -> b547ac4f380bddb6.ll
├ INFO: [2/18] 翻译完成: tokens.py
├ INFO: -> 06f53cc594b4ac6c.ll
├ INFO: [3/18] 翻译完成: win32sync.py
├ INFO: -> 067c78e9f121dce3.ll
├ INFO: [4/18] 翻译完成: win32process.py
├ INFO: -> 6446627d4f07a1b5.ll
├ INFO: [5/18] 翻译完成: winsock2.py
├ INFO: -> 72e2d5ccb7cedcf1.ll
├ INFO: [6/18] 翻译完成: win32memory.py
├ INFO: -> f6b51804a0ba8ff0.ll
├ INFO: [7/18] 翻译完成: win32file.py
├ INFO: -> b5a965302cded36b.ll
├ INFO: [8/18] 翻译完成: sys.py
├ INFO: -> 0c212981c180e7fb.ll
├ INFO: [9/18] 翻译完成: lexer.py
├ INFO: -> c3b259b4059f8668.ll
├ INFO: [10/18] 翻译完成: viperlib.py
├ INFO: -> 0035c95a18d4f8e8.ll
├ INFO: [11/18] 翻译完成: fileio.py
├ INFO: -> 5dab8cb390496d22.ll
├ INFO: [12/18] 翻译完成: base.py
├ WARN: HandlesBase: 忽略异常 'NoneType' object is not subscriptable
├ INFO: -> 4dd6b3f1427d1cc5.ll
├ INFO: [13/18] 翻译完成: match.py
├ INFO: -> 4337fb260448bbe2.ll
├ INFO: [14/18] 翻译完成: astaux.py
├ INFO: -> 657e182b27c2a022.ll
├ INFO: [15/18] 翻译完成: stmts.py
├ INFO: -> 47767b5026a8ee15.ll
├ INFO: [16/18] 翻译完成: exprs.py
├ WARN: HandlesBase: 忽略异常 'NoneType' object is not subscriptable
├ INFO: -> ee52c08239684346.ll
├ INFO: [17/18] 翻译完成: parser.py
├ WARN: HandlesBase: 忽略异常 'NoneType' object is not subscriptable
├ INFO: -> 34548789d646f432.ll
├ INFO: [18/18] 翻译完成: __init__.py
├ INFO: 编译 18 个 .ll 文件
├ SUCCESS: [1/18] 编译成功: posix.py
├ SUCCESS: [2/18] 编译成功: astaux.py
├ SUCCESS: [3/18] 编译成功: lexer.py
├ SUCCESS: [4/18] 编译成功: base.py
├ SUCCESS: [5/18] 编译成功: tokens.py
├ SUCCESS: [6/18] 编译成功: match.py
├ WARN: [7/18] 编译失败: stmts.py: llc.exe: error: llc.exe: D:\Users\TermiNexus\Desktop\TransPyC\Test\AstTest\output\657e182b27c2a022_dso.ll:4476:1: error: expected instruction opcode
}
^
├ WARN: [8/18] 编译失败: parser.py: llc.exe: error: llc.exe: D:\Users\TermiNexus\Desktop\TransPyC\Test\AstTest\output\ee52c08239684346_dso.ll:4282:1: error: expected instruction opcode
}
^
├ WARN: [9/18] 编译失败: __init__.py: llc.exe: error: llc.exe: D:\Users\TermiNexus\Desktop\TransPyC\Test\AstTest\output\34548789d646f432_dso.ll:1865:1: error: expected instruction opcode
}
^
├ SUCCESS: [10/18] 编译成功: viperlib.py
├ SUCCESS: [11/18] 编译成功: exprs.py
├ SUCCESS: [12/18] 编译成功: win32memory.py
├ SUCCESS: [13/18] 编译成功: fileio.py
├ SUCCESS: [14/18] 编译成功: win32file.py
├ SUCCESS: [15/18] 编译成功: sys.py
├ SUCCESS: [16/18] 编译成功: win32process.py
├ SUCCESS: [17/18] 编译成功: win32sync.py
├ SUCCESS: [18/18] 编译成功: winsock2.py
├ WARN: 保留失败文件以便调试: D:\Users\TermiNexus\Desktop\TransPyC\Test\AstTest\output\657e182b27c2a022.ll
├ WARN: 保留失败文件以便调试: D:\Users\TermiNexus\Desktop\TransPyC\Test\AstTest\output\ee52c08239684346.ll
├ WARN: 保留失败文件以便调试: D:\Users\TermiNexus\Desktop\TransPyC\Test\AstTest\output\34548789d646f432.ll
├ ERROR:
includes 文件编译失败
[FATAL] 方法体编译失败 (list[str].append): TypeError: 'NoneType' object is not subscriptable
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 32, in HandleBodyLlvm
self.Trans.IfHandler._HandleIfLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesIf.py", line 193, in _HandleIfLlvm
self.Trans.BodyHandler.HandleBodyLlvm(Node.body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 30, in HandleBodyLlvm
self.Trans.AnnAssignHandler._HandleAnnAssignLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesAnnAssign.py", line 289, in _HandleAnnAssignLlvm
self._HandleAnnAssignLlvmInner(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesAnnAssign.py", line 487, in _HandleAnnAssignLlvmInner
InitValue = self.HandleExprLlvm(Node.value, VarType=VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBase.py", line 526, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 490, in _HandleCallLlvm
return self._HandleMethodCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 2509, in _HandleMethodCallLlvm
VtableSlotPtr = Gen.builder.gep(ObjVal, [ir.Constant(ir.IntType(32), 0), ir.Constant(ir.IntType(32), 0)], name=f"vtable_slot_{ClassName}")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Python312\Lib\site-packages\llvmlite\ir\builder.py", line 927, in gep
instr = instructions.GEPInstr(self.block, ptr, indices,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Python312\Lib\site-packages\llvmlite\ir\instructions.py", line 563, in __init__
lasttyp, typ = typ, typ.gep(i)
^^^^^^^^^^
File "D:\Python312\Lib\site-packages\llvmlite\ir\types.py", line 633, in gep
return self.elements[i.constant]
~~~~~~~~~~~~~^^^^^^^^^^^^
TypeError: 'NoneType' object is not subscriptable
[FATAL] 方法体编译失败 (list[str].append): TypeError: 'NoneType' object is not subscriptable
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 32, in HandleBodyLlvm
self.Trans.IfHandler._HandleIfLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesIf.py", line 193, in _HandleIfLlvm
self.Trans.BodyHandler.HandleBodyLlvm(Node.body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 30, in HandleBodyLlvm
self.Trans.AnnAssignHandler._HandleAnnAssignLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesAnnAssign.py", line 289, in _HandleAnnAssignLlvm
self._HandleAnnAssignLlvmInner(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesAnnAssign.py", line 487, in _HandleAnnAssignLlvmInner
InitValue = self.HandleExprLlvm(Node.value, VarType=VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBase.py", line 526, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 490, in _HandleCallLlvm
return self._HandleMethodCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 2509, in _HandleMethodCallLlvm
VtableSlotPtr = Gen.builder.gep(ObjVal, [ir.Constant(ir.IntType(32), 0), ir.Constant(ir.IntType(32), 0)], name=f"vtable_slot_{ClassName}")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Python312\Lib\site-packages\llvmlite\ir\builder.py", line 927, in gep
instr = instructions.GEPInstr(self.block, ptr, indices,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Python312\Lib\site-packages\llvmlite\ir\instructions.py", line 563, in __init__
lasttyp, typ = typ, typ.gep(i)
^^^^^^^^^^
File "D:\Python312\Lib\site-packages\llvmlite\ir\types.py", line 633, in gep
return self.elements[i.constant]
~~~~~~~~~~~~~^^^^^^^^^^^^
TypeError: 'NoneType' object is not subscriptable
[FATAL] 方法体编译失败 (list[str].append): TypeError: 'NoneType' object is not subscriptable
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 32, in HandleBodyLlvm
self.Trans.IfHandler._HandleIfLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesIf.py", line 193, in _HandleIfLlvm
self.Trans.BodyHandler.HandleBodyLlvm(Node.body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 30, in HandleBodyLlvm
self.Trans.AnnAssignHandler._HandleAnnAssignLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesAnnAssign.py", line 289, in _HandleAnnAssignLlvm
self._HandleAnnAssignLlvmInner(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesAnnAssign.py", line 487, in _HandleAnnAssignLlvmInner
InitValue = self.HandleExprLlvm(Node.value, VarType=VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBase.py", line 526, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 490, in _HandleCallLlvm
return self._HandleMethodCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 2509, in _HandleMethodCallLlvm
VtableSlotPtr = Gen.builder.gep(ObjVal, [ir.Constant(ir.IntType(32), 0), ir.Constant(ir.IntType(32), 0)], name=f"vtable_slot_{ClassName}")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Python312\Lib\site-packages\llvmlite\ir\builder.py", line 927, in gep
instr = instructions.GEPInstr(self.block, ptr, indices,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Python312\Lib\site-packages\llvmlite\ir\instructions.py", line 563, in __init__
lasttyp, typ = typ, typ.gep(i)
^^^^^^^^^^
File "D:\Python312\Lib\site-packages\llvmlite\ir\types.py", line 633, in gep
return self.elements[i.constant]
~~~~~~~~~~~~~^^^^^^^^^^^^
TypeError: 'NoneType' object is not subscriptable
【DictTest】编译失败
├ INFO: 读取配置文件: D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\project.json
├ INFO: 项目目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest
├ INFO: 源目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\App
├ INFO: 临时目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\temp
├ INFO: 输出目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\output
├ INFO: 阶段: all
├ INFO: 编译器: llc -filetype=obj -relocation-model=pic
├ INFO: 目标三元组: x86_64-pc-windows-gnu
├ INFO: 数据布局: e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128
├ INFO: output: 已清空 D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\output
├ INFO: temp: 已清空 D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\temp
├ INFO: 清理完成
├ INFO: 找到 1 个可达源文件(从入口遍历)
├ INFO: [1/1] 生成签名: main.py
├ INFO: -> b3c2b99b6f3be4c7.pyi (签名)
├ INFO: 处理 14 个被引用的 Python 库文件
├ INFO: 生成签名: _dict.py -> e3e7b6de8d7d8b03.pyi
├ INFO: 缓存命中(全局): atom.py -> 271ea3decb810db2.pyi
├ INFO: 生成签名: json\__init__.py -> 57288496f7c2d1ad.pyi
├ INFO: 生成签名: json\__parser.py -> 240a9a4157959a9f.pyi
├ INFO: 生成签名: json\__writer.py -> 20cd49775c100a38.pyi
├ INFO: 缓存命中(全局): memhub.py -> f3560b99de458aec.pyi
├ INFO: 缓存命中(全局): stdint.py -> f5522571bcce7bcb.pyi
├ INFO: 缓存命中(全局): stdio.py -> 6f62fe05c5ea1ceb.pyi
├ INFO: 缓存命中(全局): stdlib.py -> 90c53dd6db8d41cf.pyi
├ INFO: 缓存命中(全局): string.py -> 9474791561654346.pyi
├ INFO: 缓存命中(全局): testcheck.py -> 14d33679f7fadf1f.pyi
├ INFO: 缓存命中(全局): viperio.py -> c9f4be41ca1cc2b4.pyi
├ INFO: 缓存命中(全局): w32\win32base.py -> 7e529fe7a078cfef.pyi
├ INFO: 缓存命中(全局): w32\win32console.py -> bbdf3bbd4c3bc28c.pyi
├ INFO: 结构体注册表: 24 个类型, 0 个枚举
├ INFO: -> b3c2b99b6f3be4c7.stub.ll (声明)
├ INFO: 生成声明: _dict.py -> e3e7b6de8d7d8b03.stub.ll
├ INFO: 缓存命中(全局): atom.py -> 271ea3decb810db2.stub.ll
├ INFO: 生成声明: json\__init__.py -> 57288496f7c2d1ad.stub.ll
├ INFO: 生成声明: json\__parser.py -> 240a9a4157959a9f.stub.ll
├ INFO: 生成声明: json\__writer.py -> 20cd49775c100a38.stub.ll
├ INFO: 缓存命中(全局): memhub.py -> f3560b99de458aec.stub.ll
├ INFO: 缓存命中(全局): stdint.py -> f5522571bcce7bcb.stub.ll
├ INFO: 缓存命中(全局): stdio.py -> 6f62fe05c5ea1ceb.stub.ll
├ INFO: 缓存命中(全局): stdlib.py -> 90c53dd6db8d41cf.stub.ll
├ INFO: 缓存命中(全局): string.py -> 9474791561654346.stub.ll
├ INFO: 缓存命中(全局): testcheck.py -> 14d33679f7fadf1f.stub.ll
├ INFO: 缓存命中(全局): viperio.py -> c9f4be41ca1cc2b4.stub.ll
├ INFO: 缓存命中(全局): w32\win32base.py -> 7e529fe7a078cfef.stub.ll
├ INFO: 缓存命中(全局): w32\win32console.py -> bbdf3bbd4c3bc28c.stub.ll
├ SUCCESS: 声明接口生成到: D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\temp
├ INFO: SHA1 映射表 (15 个文件):
├ INFO: 找到 1 个可达源文件(已按依赖排序)
├ INFO: 处理顺序:
├ INFO: 1. main.py
├ INFO: 过滤旧文件: stub 34->15, sig 56->15
├ INFO: [缓存] 构建共享符号表数据...
├ INFO: [缓存] 共享符号表构建完成 (0.53s, 677 符号, 5 泛型模板, 20 doc 元数据)
├ INFO:
需要翻译 1 个文件
├ ERROR: main.py: Type of #1 arg mismatch: i8* != %"e3e7b6de8d7d8b03.dict"*
源代码 (D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\App\main.py, line 14):
14 | w32.win32console.SetConsoleOutputCP(65001)
Type of #1 arg mismatch: i8* != %"e3e7b6de8d7d8b03.dict"*
源代码 (D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\App\main.py, line 26):
26 | d.set_int("beta", 20)
Type of #1 arg mismatch: i8* != %"e3e7b6de8d7d8b03.dict"*
├ INFO: 翻译总耗时: 1.2s
├ INFO:
[阶段二完成] .ll 文件生成到: D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\output
├ INFO: [includes] 发现 Python 包文件: w32\fileio.py
├ INFO: [includes] 发现 Python 包文件: w32\win32base.py
├ INFO: [includes] 发现 Python 包文件: w32\win32console.py
├ INFO: [includes] 发现 Python 包文件: w32\win32file.py
├ INFO: [includes] 发现 Python 包文件: w32\win32memory.py
├ INFO: [includes] 发现 Python 包文件: w32\win32process.py
├ INFO: [includes] 发现 Python 包文件: w32\win32sync.py
├ INFO: [includes] 发现 Python 包文件: w32\winsock2.py
├ INFO: [includes] 发现 Python 源文件: string.py
├ INFO: [includes] 发现 Python 源文件: testcheck.py
├ INFO: [includes] 发现 Python 源文件: stdlib.py
├ INFO: [includes] 发现 Python 源文件: memhub.py
├ INFO: [includes] 发现 Python 源文件: _dict.py
├ INFO: [includes] 发现 Python 源文件: stdio.py
├ INFO: [includes] 发现 Python 源文件: stdint.py
├ INFO: [includes] 发现 Python 包文件: json\__init__.py
├ INFO: [includes] 发现 Python 包文件: json\__parser.py
├ INFO: [includes] 发现 Python 包文件: json\__writer.py
├ INFO: [includes] 发现间接依赖: atom.py
├ INFO: [includes] 发现间接依赖: viperio.py
├ INFO:
[includes 编译] 找到 20 个 Python 源文件
├ INFO: 跳过(预编译): atom.py -> 271ea3decb810db2.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(声明文件): stdint.py
├ INFO: 跳过(声明文件): stdio.py
├ INFO: 跳过(声明文件): stdlib.py
├ INFO: 跳过(预编译): string.py -> 9474791561654346.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): viperio.py -> c9f4be41ca1cc2b4.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): memhub.py -> f3560b99de458aec.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32base.py -> 7e529fe7a078cfef.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32console.py -> bbdf3bbd4c3bc28c.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): testcheck.py -> 14d33679f7fadf1f.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32file.py -> f6b51804a0ba8ff0.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): fileio.py -> 0035c95a18d4f8e8.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32memory.py -> 72e2d5ccb7cedcf1.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32process.py -> 067c78e9f121dce3.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32sync.py -> 06f53cc594b4ac6c.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): winsock2.py -> 6446627d4f07a1b5.x86_64-pc-windows-gnu.pic.obj
├ INFO: 翻译 4 个文件
├ INFO: -> e3e7b6de8d7d8b03.ll
├ INFO: [1/4] 翻译完成: _dict.py
├ INFO: -> 20cd49775c100a38.ll
├ INFO: [2/4] 翻译完成: __writer.py
├ INFO: -> 240a9a4157959a9f.ll
├ INFO: [3/4] 翻译完成: __parser.py
├ INFO: -> 57288496f7c2d1ad.ll
├ INFO: [4/4] 翻译完成: __init__.py
├ INFO: 编译 4 个 .ll 文件
├ SUCCESS: [1/4] 编译成功: __writer.py
├ SUCCESS: [2/4] 编译成功: __init__.py
├ SUCCESS: [3/4] 编译成功: __parser.py
├ SUCCESS: [4/4] 编译成功: _dict.py
├ INFO: [清理] 删除 4 个过时文件
├ INFO: [编译] 无 .ll 文件需要重新编译
├ INFO:
[链接] 找到 0 个 .obj 文件
├ INFO: [链接] 额外库文件: 17 个
├ INFO: - 271ea3decb810db2.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 9474791561654346.x86_64-pc-windows-gnu.pic.obj
├ INFO: - c9f4be41ca1cc2b4.x86_64-pc-windows-gnu.pic.obj
├ INFO: - f3560b99de458aec.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 7e529fe7a078cfef.x86_64-pc-windows-gnu.pic.obj
├ INFO: - bbdf3bbd4c3bc28c.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 14d33679f7fadf1f.x86_64-pc-windows-gnu.pic.obj
├ INFO: - f6b51804a0ba8ff0.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 0035c95a18d4f8e8.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 72e2d5ccb7cedcf1.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 067c78e9f121dce3.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 06f53cc594b4ac6c.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 6446627d4f07a1b5.x86_64-pc-windows-gnu.pic.obj
├ INFO: - e3e7b6de8d7d8b03.obj
├ INFO: - 240a9a4157959a9f.obj
├ INFO: - 20cd49775c100a38.obj
├ INFO: - 57288496f7c2d1ad.obj
├ INFO: 执行: clang++ -Wl,--allow-multiple-definition -o D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\output\DictTest.exe D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\271ea3decb810db2.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\9474791561654346.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\c9f4be41ca1cc2b4.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\f3560b99de458aec.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\7e529fe7a078cfef.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\bbdf3bbd4c3bc28c.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\14d33679f7fadf1f.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\f6b51804a0ba8ff0.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\0035c95a18d4f8e8.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\72e2d5ccb7cedcf1.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\067c78e9f121dce3.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\06f53cc594b4ac6c.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\6446627d4f07a1b5.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\output\e3e7b6de8d7d8b03.obj D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\output\240a9a4157959a9f.obj D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\output\20cd49775c100a38.obj D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\output\57288496f7c2d1ad.obj -lmsvcrt -lucrt -lpthread -lmingwex -lkernel32
├ ERROR: 链接失败: D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\output\e3e7b6de8d7d8b03.obj:e3e7b6de8d7d8b03_dso.ll:(.text+0xa64): undefined reference to `e3e7b6de8d7d8b03.write'
D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\output\e3e7b6de8d7d8b03.obj:e3e7b6de8d7d8b03_dso.ll:(.text+0xa8a): undefined reference to `e3e7b6de8d7d8b03.parse'
D:/msys64/mingw64/bin/ld: D:/msys64/mingw64/lib/libmingw32.a(lib64_libmingw32_a-crtexewin.o): in function `main':
D:/W/B/src/mingw-w64/mingw-w64-crt/crt/crtexewin.c:62:(.text.startup+0xb6): undefined reference to `WinMain'
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
├ ERROR:
链接失败,立即终止编译。
[FATAL] 方法体编译失败 (.main): TypeError: Type of #1 arg mismatch: i8* != %"e3e7b6de8d7d8b03.dict"*
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 30, in HandleBodyLlvm
self.Trans.AnnAssignHandler._HandleAnnAssignLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesAnnAssign.py", line 289, in _HandleAnnAssignLlvm
self._HandleAnnAssignLlvmInner(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesAnnAssign.py", line 487, in _HandleAnnAssignLlvmInner
InitValue = self.HandleExprLlvm(Node.value, VarType=VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBase.py", line 526, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 281, in _HandleCallLlvm
return self._HandleClassNewLlvm(Node, FuncName)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 3456, in _HandleClassNewLlvm
Gen.builder.call(NewFunc, [result], name=f"before_init_{ClassName}")
File "D:\Python312\Lib\site-packages\llvmlite\ir\builder.py", line 881, in call
inst = instructions.CallInstr(self.block, fn, args, name=name,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Python312\Lib\site-packages\llvmlite\ir\instructions.py", line 105, in __init__
raise TypeError(msg)
TypeError: Type of #1 arg mismatch: i8* != %"e3e7b6de8d7d8b03.dict"*
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\Projectrans\Phase2Translator.py", line 1039, in _translate_file
result = trans.Convert(
^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\Shell\TransPyC.py", line 555, in Convert
code: str = self.translator.GenerateCCode(Tree, target='llvm')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Translator\LlvmGenerator.py", line 642, in GenerateCCode
return self.GenerateLlvmDirect(Tree)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Translator\LlvmGenerator.py", line 179, in GenerateLlvmDirect
self.FunctionHandler._EmitFunctionLlvm(Node, Gen)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 30, in HandleBodyLlvm
self.Trans.AnnAssignHandler._HandleAnnAssignLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesAnnAssign.py", line 289, in _HandleAnnAssignLlvm
self._HandleAnnAssignLlvmInner(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesAnnAssign.py", line 487, in _HandleAnnAssignLlvmInner
InitValue = self.HandleExprLlvm(Node.value, VarType=VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBase.py", line 526, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 281, in _HandleCallLlvm
return self._HandleClassNewLlvm(Node, FuncName)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 3456, in _HandleClassNewLlvm
Gen.builder.call(NewFunc, [result], name=f"before_init_{ClassName}")
File "D:\Python312\Lib\site-packages\llvmlite\ir\builder.py", line 881, in call
inst = instructions.CallInstr(self.block, fn, args, name=name,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Python312\Lib\site-packages\llvmlite\ir\instructions.py", line 105, in __init__
raise TypeError(msg)
TypeError: Type of #1 arg mismatch: i8* != %"e3e7b6de8d7d8b03.dict"*
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\Projectrans\Phase2Translator.py", line 467, in run
self._translate_file(src_path, out_path, prebuilt_ModuleSha1Map=msm)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\Projectrans\Phase2Translator.py", line 1055, in _translate_file
raise type(e)(enriched) from e
TypeError: Type of #1 arg mismatch: i8* != %"e3e7b6de8d7d8b03.dict"*
源代码 (D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\App\main.py, line 14):
14 | w32.win32console.SetConsoleOutputCP(65001)
Type of #1 arg mismatch: i8* != %"e3e7b6de8d7d8b03.dict"*
源代码 (D:\Users\TermiNexus\Desktop\TransPyC\Test\DictTest\App\main.py, line 26):
26 | d.set_int("beta", 20)
Type of #1 arg mismatch: i8* != %"e3e7b6de8d7d8b03.dict"*
【FakeDuckTest】编译失败
├ INFO: 读取配置文件: D:\Users\TermiNexus\Desktop\TransPyC\Test\FakeDuckTest\project.json
├ INFO: 项目目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\FakeDuckTest
├ INFO: 源目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\FakeDuckTest\App
├ INFO: 临时目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\FakeDuckTest\temp
├ INFO: 输出目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\FakeDuckTest\output
├ INFO: 阶段: all
├ INFO: 编译器: llc -filetype=obj -relocation-model=pic
├ INFO: 目标三元组: x86_64-pc-windows-gnu
├ INFO: 数据布局: e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128
├ INFO: output: 已清空 D:\Users\TermiNexus\Desktop\TransPyC\Test\FakeDuckTest\output
├ INFO: temp: 已清空 D:\Users\TermiNexus\Desktop\TransPyC\Test\FakeDuckTest\temp
├ INFO: 清理完成
├ INFO: 找到 1 个可达源文件(从入口遍历)
├ INFO: [1/1] 生成签名: main.py
├ INFO: -> 48352329f97d0858.pyi (签名)
├ INFO: 处理 14 个被引用的 Python 库文件
├ INFO: 生成签名: _fakeduck.py -> 79b337e5ea8951e2.pyi
├ INFO: 生成签名: _list.py -> f2ecbf8ced20575c.pyi
├ INFO: 生成签名: _withcontent.py -> 5b2e220c5bae60c9.pyi
├ INFO: 缓存命中(全局): atom.py -> 271ea3decb810db2.pyi
├ INFO: 缓存命中(全局): memhub.py -> f3560b99de458aec.pyi
├ INFO: 缓存命中(全局): stdint.py -> f5522571bcce7bcb.pyi
├ INFO: 缓存命中(全局): stdio.py -> 6f62fe05c5ea1ceb.pyi
├ INFO: 缓存命中(全局): stdlib.py -> 90c53dd6db8d41cf.pyi
├ INFO: 缓存命中(全局): string.py -> 9474791561654346.pyi
├ INFO: 缓存命中(全局): testcheck.py -> 14d33679f7fadf1f.pyi
├ INFO: 缓存命中(全局): viperio.py -> c9f4be41ca1cc2b4.pyi
├ INFO: 缓存命中(全局): w32\win32base.py -> 7e529fe7a078cfef.pyi
├ INFO: 缓存命中(全局): w32\win32console.py -> bbdf3bbd4c3bc28c.pyi
├ INFO: 缓存命中(全局): w32\win32process.py -> 067c78e9f121dce3.pyi
├ INFO: 结构体注册表: 28 个类型, 0 个枚举
├ INFO: -> 48352329f97d0858.stub.ll (声明)
├ INFO: 生成声明: _fakeduck.py -> 79b337e5ea8951e2.stub.ll
├ INFO: 生成声明: _list.py -> f2ecbf8ced20575c.stub.ll
├ INFO: 生成声明: _withcontent.py -> 5b2e220c5bae60c9.stub.ll
├ INFO: 缓存命中(全局): atom.py -> 271ea3decb810db2.stub.ll
├ INFO: 缓存命中(全局): memhub.py -> f3560b99de458aec.stub.ll
├ INFO: 缓存命中(全局): stdint.py -> f5522571bcce7bcb.stub.ll
├ INFO: 缓存命中(全局): stdio.py -> 6f62fe05c5ea1ceb.stub.ll
├ INFO: 缓存命中(全局): stdlib.py -> 90c53dd6db8d41cf.stub.ll
├ INFO: 缓存命中(全局): string.py -> 9474791561654346.stub.ll
├ INFO: 缓存命中(全局): testcheck.py -> 14d33679f7fadf1f.stub.ll
├ INFO: 缓存命中(全局): viperio.py -> c9f4be41ca1cc2b4.stub.ll
├ INFO: 缓存命中(全局): w32\win32base.py -> 7e529fe7a078cfef.stub.ll
├ INFO: 缓存命中(全局): w32\win32console.py -> bbdf3bbd4c3bc28c.stub.ll
├ INFO: 缓存命中(全局): w32\win32process.py -> 067c78e9f121dce3.stub.ll
├ SUCCESS: 声明接口生成到: D:\Users\TermiNexus\Desktop\TransPyC\Test\FakeDuckTest\temp
├ INFO: SHA1 映射表 (15 个文件):
├ INFO: 找到 1 个可达源文件(已按依赖排序)
├ INFO: 处理顺序:
├ INFO: 1. main.py
├ INFO: 过滤旧文件: stub 37->15, sig 64->15
├ INFO: [缓存] 构建共享符号表数据...
├ INFO: [缓存] 共享符号表构建完成 (0.21s, 725 符号, 5 泛型模板, 25 doc 元数据)
├ INFO:
需要翻译 1 个文件
├ INFO: -> 48352329f97d0858.ll
├ INFO: [1/1] main.py (0.7s)
├ INFO: 翻译总耗时: 0.7s
├ INFO:
[阶段二完成] .ll 文件生成到: D:\Users\TermiNexus\Desktop\TransPyC\Test\FakeDuckTest\output
├ INFO: [includes] 发现 Python 源文件: stdlib.py
├ INFO: [includes] 发现 Python 源文件: _fakeduck.py
├ INFO: [includes] 发现 Python 源文件: memhub.py
├ INFO: [includes] 发现 Python 源文件: _list.py
├ INFO: [includes] 发现 Python 源文件: testcheck.py
├ INFO: [includes] 发现 Python 源文件: stdint.py
├ INFO: [includes] 发现 Python 源文件: string.py
├ INFO: [includes] 发现 Python 源文件: _withcontent.py
├ INFO: [includes] 发现 Python 包文件: w32\fileio.py
├ INFO: [includes] 发现 Python 包文件: w32\win32base.py
├ INFO: [includes] 发现 Python 包文件: w32\win32console.py
├ INFO: [includes] 发现 Python 包文件: w32\win32file.py
├ INFO: [includes] 发现 Python 包文件: w32\win32memory.py
├ INFO: [includes] 发现 Python 包文件: w32\win32process.py
├ INFO: [includes] 发现 Python 包文件: w32\win32sync.py
├ INFO: [includes] 发现 Python 包文件: w32\winsock2.py
├ INFO: [includes] 发现 Python 源文件: stdio.py
├ INFO: [includes] 发现间接依赖: atom.py
├ INFO: [includes] 发现间接依赖: viperio.py
├ INFO:
[includes 编译] 找到 19 个 Python 源文件
├ INFO: 跳过(预编译): atom.py -> 271ea3decb810db2.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(声明文件): stdint.py
├ INFO: 跳过(声明文件): stdio.py
├ INFO: 跳过(声明文件): stdlib.py
├ INFO: 跳过(预编译): string.py -> 9474791561654346.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): viperio.py -> c9f4be41ca1cc2b4.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): memhub.py -> f3560b99de458aec.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32base.py -> 7e529fe7a078cfef.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32console.py -> bbdf3bbd4c3bc28c.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): testcheck.py -> 14d33679f7fadf1f.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32file.py -> f6b51804a0ba8ff0.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): fileio.py -> 0035c95a18d4f8e8.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32memory.py -> 72e2d5ccb7cedcf1.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32process.py -> 067c78e9f121dce3.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32sync.py -> 06f53cc594b4ac6c.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): winsock2.py -> 6446627d4f07a1b5.x86_64-pc-windows-gnu.pic.obj
├ INFO: 翻译 3 个文件
├ INFO: -> f2ecbf8ced20575c.ll
├ INFO: [1/3] 翻译完成: _list.py
├ INFO: -> 5b2e220c5bae60c9.ll
├ INFO: [2/3] 翻译完成: _withcontent.py
├ INFO: -> 79b337e5ea8951e2.ll
├ INFO: [3/3] 翻译完成: _fakeduck.py
├ INFO: 编译 3 个 .ll 文件
├ SUCCESS: [1/3] 编译成功: _list.py
├ SUCCESS: [2/3] 编译成功: _withcontent.py
├ SUCCESS: [3/3] 编译成功: _fakeduck.py
├ INFO: [清理] 删除 3 个过时文件
├ INFO:
[编译] 找到 1 个 .ll 文件需要编译
├ INFO: 并行编译 1 个文件 (workers=1)
├ ERROR: 48352329f97d0858.ll: llc.exe: error: llc.exe: D:\Users\TermiNexus\Desktop\TransPyC\Test\FakeDuckTest\output\48352329f97d0858_dso.ll:3065:62: error: use of undefined value '%call_enter'
%local_free_cast = bitcast %"f3560b99de458aec.MemManager"* %call_enter to i8*
^
├ ERROR:
1 个文件编译失败
【JsonTest】编译失败
├ INFO: 读取配置文件: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\project.json
├ INFO: 项目目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest
├ INFO: 源目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\App
├ INFO: 临时目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\temp
├ INFO: 输出目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output
├ INFO: 阶段: all
├ INFO: 编译器: llc -filetype=obj -relocation-model=pic
├ INFO: 目标三元组: x86_64-pc-windows-gnu
├ INFO: 数据布局: e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128
├ INFO: output: 已清空 D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output
├ INFO: temp: 已清空 D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\temp
├ INFO: 清理完成
├ INFO: 找到 1 个可达源文件(从入口遍历)
├ INFO: [1/1] 生成签名: main.py
├ INFO: -> 8a97754e9e3c2b9a.pyi (签名)
├ INFO: 处理 13 个被引用的 Python 库文件
├ INFO: 缓存命中(全局): atom.py -> 271ea3decb810db2.pyi
├ INFO: 缓存命中(全局): json\__init__.py -> 57288496f7c2d1ad.pyi
├ INFO: 缓存命中(全局): json\__parser.py -> 240a9a4157959a9f.pyi
├ INFO: 缓存命中(全局): json\__writer.py -> 20cd49775c100a38.pyi
├ INFO: 缓存命中(全局): memhub.py -> f3560b99de458aec.pyi
├ INFO: 缓存命中(全局): stdint.py -> f5522571bcce7bcb.pyi
├ INFO: 缓存命中(全局): stdio.py -> 6f62fe05c5ea1ceb.pyi
├ INFO: 缓存命中(全局): string.py -> 9474791561654346.pyi
├ INFO: 缓存命中(全局): testcheck.py -> 14d33679f7fadf1f.pyi
├ INFO: 缓存命中(全局): viperio.py -> c9f4be41ca1cc2b4.pyi
├ INFO: 缓存命中(全局): w32\win32base.py -> 7e529fe7a078cfef.pyi
├ INFO: 缓存命中(全局): w32\win32console.py -> bbdf3bbd4c3bc28c.pyi
├ INFO: 缓存命中(全局): w32\win32memory.py -> 72e2d5ccb7cedcf1.pyi
├ INFO: 结构体注册表: 24 个类型, 0 个枚举
├ INFO: -> 8a97754e9e3c2b9a.stub.ll (声明)
├ INFO: 缓存命中(全局): atom.py -> 271ea3decb810db2.stub.ll
├ INFO: 缓存命中(全局): json\__init__.py -> 57288496f7c2d1ad.stub.ll
├ INFO: 缓存命中(全局): json\__parser.py -> 240a9a4157959a9f.stub.ll
├ INFO: 缓存命中(全局): json\__writer.py -> 20cd49775c100a38.stub.ll
├ INFO: 缓存命中(全局): memhub.py -> f3560b99de458aec.stub.ll
├ INFO: 缓存命中(全局): stdint.py -> f5522571bcce7bcb.stub.ll
├ INFO: 缓存命中(全局): stdio.py -> 6f62fe05c5ea1ceb.stub.ll
├ INFO: 缓存命中(全局): string.py -> 9474791561654346.stub.ll
├ INFO: 缓存命中(全局): testcheck.py -> 14d33679f7fadf1f.stub.ll
├ INFO: 缓存命中(全局): viperio.py -> c9f4be41ca1cc2b4.stub.ll
├ INFO: 缓存命中(全局): w32\win32base.py -> 7e529fe7a078cfef.stub.ll
├ INFO: 缓存命中(全局): w32\win32console.py -> bbdf3bbd4c3bc28c.stub.ll
├ INFO: 缓存命中(全局): w32\win32memory.py -> 72e2d5ccb7cedcf1.stub.ll
├ SUCCESS: 声明接口生成到: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\temp
├ INFO: SHA1 映射表 (14 个文件):
├ INFO: 找到 1 个可达源文件(已按依赖排序)
├ INFO: 处理顺序:
├ INFO: 1. main.py
├ INFO: 过滤旧文件: stub 38->14, sig 73->14
├ INFO: [缓存] 构建共享符号表数据...
├ INFO: [缓存] 共享符号表构建完成 (0.26s, 756 符号, 5 泛型模板, 33 doc 元数据)
├ INFO:
需要翻译 1 个文件
├ INFO: -> 8a97754e9e3c2b9a.ll
├ INFO: [1/1] main.py (0.9s)
├ INFO: 翻译总耗时: 0.9s
├ INFO:
[阶段二完成] .ll 文件生成到: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output
├ INFO: [includes] 发现 Python 包文件: json\__init__.py
├ INFO: [includes] 发现 Python 包文件: json\__parser.py
├ INFO: [includes] 发现 Python 包文件: json\__writer.py
├ INFO: [includes] 发现 Python 源文件: testcheck.py
├ INFO: [includes] 发现 Python 包文件: w32\fileio.py
├ INFO: [includes] 发现 Python 包文件: w32\win32base.py
├ INFO: [includes] 发现 Python 包文件: w32\win32console.py
├ INFO: [includes] 发现 Python 包文件: w32\win32file.py
├ INFO: [includes] 发现 Python 包文件: w32\win32memory.py
├ INFO: [includes] 发现 Python 包文件: w32\win32process.py
├ INFO: [includes] 发现 Python 包文件: w32\win32sync.py
├ INFO: [includes] 发现 Python 包文件: w32\winsock2.py
├ INFO: [includes] 发现 Python 源文件: memhub.py
├ INFO: [includes] 发现 Python 源文件: string.py
├ INFO: [includes] 发现 Python 源文件: stdint.py
├ INFO: [includes] 发现 Python 源文件: stdio.py
├ INFO: [includes] 发现间接依赖: viperio.py
├ INFO: [includes] 发现间接依赖: atom.py
├ INFO:
[includes 编译] 找到 18 个 Python 源文件
├ INFO: 跳过(预编译): atom.py -> 271ea3decb810db2.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(声明文件): stdint.py
├ INFO: 跳过(声明文件): stdio.py
├ INFO: 跳过(预编译): string.py -> 9474791561654346.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): viperio.py -> c9f4be41ca1cc2b4.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): memhub.py -> f3560b99de458aec.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): __parser.py -> 240a9a4157959a9f.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): __writer.py -> 20cd49775c100a38.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): __init__.py -> 57288496f7c2d1ad.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32base.py -> 7e529fe7a078cfef.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32console.py -> bbdf3bbd4c3bc28c.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): testcheck.py -> 14d33679f7fadf1f.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32file.py -> f6b51804a0ba8ff0.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): fileio.py -> 0035c95a18d4f8e8.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32memory.py -> 72e2d5ccb7cedcf1.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32process.py -> 067c78e9f121dce3.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): win32sync.py -> 06f53cc594b4ac6c.x86_64-pc-windows-gnu.pic.obj
├ INFO: 跳过(预编译): winsock2.py -> 6446627d4f07a1b5.x86_64-pc-windows-gnu.pic.obj
├ INFO:
[编译] 找到 1 个 .ll 文件需要编译
├ INFO: 并行编译 1 个文件 (workers=1)
├ SUCCESS: 8a97754e9e3c2b9a.ll
├ INFO:
[链接] 找到 1 个 .obj 文件
├ INFO: [链接] 额外库文件: 16 个
├ INFO: - 271ea3decb810db2.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 9474791561654346.x86_64-pc-windows-gnu.pic.obj
├ INFO: - c9f4be41ca1cc2b4.x86_64-pc-windows-gnu.pic.obj
├ INFO: - f3560b99de458aec.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 240a9a4157959a9f.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 20cd49775c100a38.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 57288496f7c2d1ad.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 7e529fe7a078cfef.x86_64-pc-windows-gnu.pic.obj
├ INFO: - bbdf3bbd4c3bc28c.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 14d33679f7fadf1f.x86_64-pc-windows-gnu.pic.obj
├ INFO: - f6b51804a0ba8ff0.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 0035c95a18d4f8e8.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 72e2d5ccb7cedcf1.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 067c78e9f121dce3.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 06f53cc594b4ac6c.x86_64-pc-windows-gnu.pic.obj
├ INFO: - 6446627d4f07a1b5.x86_64-pc-windows-gnu.pic.obj
├ INFO: 执行: clang++ -Wl,--allow-multiple-definition -Wl,--unresolved-symbols=ignore-in-object-files -o D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\JsonTest.exe D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\8a97754e9e3c2b9a.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\271ea3decb810db2.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\9474791561654346.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\c9f4be41ca1cc2b4.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\f3560b99de458aec.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\240a9a4157959a9f.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\20cd49775c100a38.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\57288496f7c2d1ad.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\7e529fe7a078cfef.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\bbdf3bbd4c3bc28c.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\14d33679f7fadf1f.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\f6b51804a0ba8ff0.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\0035c95a18d4f8e8.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\72e2d5ccb7cedcf1.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\067c78e9f121dce3.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\06f53cc594b4ac6c.x86_64-pc-windows-gnu.pic.obj D:\Users\TermiNexus\Desktop\TransPyC\includes.binary\6446627d4f07a1b5.x86_64-pc-windows-gnu.pic.obj -lmsvcrt -lucrt -lpthread -lmingwex -lkernel32 -luser32 -latomic
├ ERROR: 链接失败: D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\8a97754e9e3c2b9a.obj:8a97754e9e3c2b9a_dso.ll:(.text+0x5f6): undefined reference to `8a97754e9e3c2b9a.parse'
D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\8a97754e9e3c2b9a.obj:8a97754e9e3c2b9a_dso.ll:(.text+0x652): undefined reference to `8a97754e9e3c2b9a.parse'
D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\8a97754e9e3c2b9a.obj:8a97754e9e3c2b9a_dso.ll:(.text+0x68e): undefined reference to `8a97754e9e3c2b9a.parse'
D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\8a97754e9e3c2b9a.obj:8a97754e9e3c2b9a_dso.ll:(.text+0x70e): undefined reference to `8a97754e9e3c2b9a.parse'
D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\8a97754e9e3c2b9a.obj:8a97754e9e3c2b9a_dso.ll:(.text+0x778): undefined reference to `8a97754e9e3c2b9a.parse'
D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\8a97754e9e3c2b9a.obj:8a97754e9e3c2b9a_dso.ll:(.text+0x7cc): more undefined references to `8a97754e9e3c2b9a.parse' follow
D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\8a97754e9e3c2b9a.obj:8a97754e9e3c2b9a_dso.ll:(.text+0xa2f): undefined reference to `8a97754e9e3c2b9a.write'
D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\8a97754e9e3c2b9a.obj:8a97754e9e3c2b9a_dso.ll:(.text+0xa86): undefined reference to `8a97754e9e3c2b9a.write'
D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\8a97754e9e3c2b9a.obj:8a97754e9e3c2b9a_dso.ll:(.text+0xad8): undefined reference to `8a97754e9e3c2b9a.write'
D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\8a97754e9e3c2b9a.obj:8a97754e9e3c2b9a_dso.ll:(.text+0xb2a): undefined reference to `8a97754e9e3c2b9a.write'
D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\8a97754e9e3c2b9a.obj:8a97754e9e3c2b9a_dso.ll:(.text+0xb7a): undefined reference to `8a97754e9e3c2b9a.write'
D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\8a97754e9e3c2b9a.obj:8a97754e9e3c2b9a_dso.ll:(.text+0xc3c): more undefined references to `8a97754e9e3c2b9a.write' follow
D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\8a97754e9e3c2b9a.obj:8a97754e9e3c2b9a_dso.ll:(.text+0xd57): undefined reference to `8a97754e9e3c2b9a.parse'
D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\8a97754e9e3c2b9a.obj:8a97754e9e3c2b9a_dso.ll:(.text+0x1178): undefined reference to `8a97754e9e3c2b9a.parse'
D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\8a97754e9e3c2b9a.obj:8a97754e9e3c2b9a_dso.ll:(.text+0x1222): undefined reference to `8a97754e9e3c2b9a.parse'
D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\8a97754e9e3c2b9a.obj:8a97754e9e3c2b9a_dso.ll:(.text+0x1292): undefined reference to `8a97754e9e3c2b9a.parse'
D:/msys64/mingw64/bin/ld: D:\Users\TermiNexus\Desktop\TransPyC\Test\JsonTest\output\8a97754e9e3c2b9a.obj:8a97754e9e3c2b9a_dso.ll:(.text+0x1302): undefined reference to `8a97754e9e3c2b9a.parse'
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
├ ERROR:
链接失败,立即终止编译。
【SimdTest】编译失败
├ INFO: 读取配置文件: D:\Users\TermiNexus\Desktop\TransPyC\Test\SimdTest\project.json
├ INFO: 项目目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\SimdTest
├ INFO: 源目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\SimdTest\App
├ INFO: 临时目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\SimdTest\temp
├ INFO: 输出目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\SimdTest\output
├ INFO: 阶段: all
├ INFO: 编译器: llc -filetype=obj
├ INFO: 目标三元组: x86_64-pc-windows-gnu
├ INFO: 数据布局: e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128
├ INFO: output: 已清空 D:\Users\TermiNexus\Desktop\TransPyC\Test\SimdTest\output
├ INFO: temp: 已清空 D:\Users\TermiNexus\Desktop\TransPyC\Test\SimdTest\temp
├ INFO: 清理完成
├ INFO: 找到 1 个可达源文件(从入口遍历)
├ INFO: [1/1] 生成签名: main.py
├ INFO: -> 2fcb6780db4d937f.pyi (签名)
├ INFO: 处理 13 个被引用的 Python 库文件
├ INFO: 缓存命中(全局): atom.py -> 271ea3decb810db2.pyi
├ INFO: 缓存命中(全局): memhub.py -> f3560b99de458aec.pyi
├ INFO: 生成签名: numpy\__init__.py -> c3a6aed1f1fb8b1e.pyi
├ INFO: 缓存命中(全局): stdint.py -> f5522571bcce7bcb.pyi
├ INFO: 缓存命中(全局): stdio.py -> 6f62fe05c5ea1ceb.pyi
├ INFO: 缓存命中(全局): stdlib.py -> 90c53dd6db8d41cf.pyi
├ INFO: 缓存命中(全局): string.py -> 9474791561654346.pyi
├ INFO: 缓存命中(全局): testcheck.py -> 14d33679f7fadf1f.pyi
├ INFO: 缓存命中(全局): viperio.py -> c9f4be41ca1cc2b4.pyi
├ INFO: 生成签名: vipermath.py -> 3f7c5e78d8652535.pyi
├ INFO: 生成签名: vipersimd.py -> c24f25b14b4bbd0a.pyi
├ INFO: 缓存命中(全局): w32\win32base.py -> 7e529fe7a078cfef.pyi
├ INFO: 缓存命中(全局): w32\win32console.py -> bbdf3bbd4c3bc28c.pyi
├ INFO: 结构体注册表: 23 个类型, 0 个枚举
├ INFO: -> 2fcb6780db4d937f.stub.ll (声明)
├ INFO: 缓存命中(全局): atom.py -> 271ea3decb810db2.stub.ll
├ INFO: 缓存命中(全局): memhub.py -> f3560b99de458aec.stub.ll
├ INFO: 生成声明: numpy\__init__.py -> c3a6aed1f1fb8b1e.stub.ll
├ INFO: 缓存命中(全局): stdint.py -> f5522571bcce7bcb.stub.ll
├ INFO: 缓存命中(全局): stdio.py -> 6f62fe05c5ea1ceb.stub.ll
├ INFO: 缓存命中(全局): stdlib.py -> 90c53dd6db8d41cf.stub.ll
├ INFO: 缓存命中(全局): string.py -> 9474791561654346.stub.ll
├ INFO: 缓存命中(全局): testcheck.py -> 14d33679f7fadf1f.stub.ll
├ INFO: 缓存命中(全局): viperio.py -> c9f4be41ca1cc2b4.stub.ll
├ INFO: 生成声明: vipermath.py -> 3f7c5e78d8652535.stub.ll
├ INFO: 生成声明: vipersimd.py -> c24f25b14b4bbd0a.stub.ll
├ INFO: 缓存命中(全局): w32\win32base.py -> 7e529fe7a078cfef.stub.ll
├ INFO: 缓存命中(全局): w32\win32console.py -> bbdf3bbd4c3bc28c.stub.ll
├ SUCCESS: 声明接口生成到: D:\Users\TermiNexus\Desktop\TransPyC\Test\SimdTest\temp
├ INFO: SHA1 映射表 (14 个文件):
├ INFO: 找到 1 个可达源文件(已按依赖排序)
├ INFO: 处理顺序:
├ INFO: 1. main.py
├ INFO: 过滤旧文件: stub 49->14, sig 93->14
├ INFO: [缓存] 构建共享符号表数据...
├ INFO: [缓存] 共享符号表构建完成 (0.41s, 1038 符号, 5 泛型模板, 42 doc 元数据)
├ INFO:
需要翻译 1 个文件
├ WARN: HandlesImports: 忽略异常 Undefined function: 'printf'
├ WARN: HandlesImports: 忽略异常 Undefined function: 'printf'
├ WARN: HandlesImports: 忽略异常 Undefined function: 'printf'
├ WARN: HandlesImports: 忽略异常 Undefined function: 'CUnsignedChar'
├ INFO: -> 2fcb6780db4d937f.ll
├ INFO: [1/1] main.py (3.2s)
├ INFO: 翻译总耗时: 3.2s
├ INFO:
[阶段二完成] .ll 文件生成到: D:\Users\TermiNexus\Desktop\TransPyC\Test\SimdTest\output
├ INFO: [includes] 发现 Python 源文件: stdlib.py
├ INFO: [includes] 发现 Python 源文件: memhub.py
├ INFO: [includes] 发现 Python 源文件: vipersimd.py
├ INFO: [includes] 发现 Python 源文件: stdio.py
├ INFO: [includes] 发现 Python 源文件: stdint.py
├ INFO: [includes] 发现 Python 源文件: testcheck.py
├ INFO: [includes] 发现 Python 包文件: numpy\__init__.py
├ INFO: [includes] 发现间接依赖: string.py
├ INFO: [includes] 发现间接依赖: atom.py
├ INFO: [includes] 发现间接依赖: viperio.py
├ INFO: [includes] 发现间接依赖: w32\win32console.py
├ INFO: [includes] 发现间接依赖: w32\win32base.py
├ INFO: [includes] 发现间接依赖: vipermath.py
├ INFO:
[includes 编译] 找到 13 个 Python 源文件
├ INFO: 跳过(声明文件): stdint.py
├ INFO: 跳过(声明文件): stdio.py
├ INFO: 跳过(声明文件): stdlib.py
├ INFO: 跳过(预编译): string.py -> 9474791561654346.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): win32base.py -> 7e529fe7a078cfef.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): win32console.py -> bbdf3bbd4c3bc28c.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): testcheck.py -> 14d33679f7fadf1f.x86_64-pc-windows-gnu.static.obj
├ INFO: 翻译 6 个文件
├ INFO: -> 271ea3decb810db2.ll
├ INFO: [1/6] 翻译完成: atom.py
├ INFO: -> c9f4be41ca1cc2b4.ll
├ INFO: [2/6] 翻译完成: viperio.py
├ INFO: -> c24f25b14b4bbd0a.ll
├ INFO: [3/6] 翻译完成: vipersimd.py
├ INFO: -> 3f7c5e78d8652535.ll
├ INFO: [4/6] 翻译完成: vipermath.py
├ INFO: -> f3560b99de458aec.ll
├ INFO: [5/6] 翻译完成: memhub.py
├ INFO: -> c3a6aed1f1fb8b1e.ll
├ INFO: [6/6] 翻译完成: __init__.py
├ INFO: 编译 6 个 .ll 文件
├ SUCCESS: [1/6] 编译成功: atom.py
├ SUCCESS: [2/6] 编译成功: viperio.py
├ SUCCESS: [3/6] 编译成功: vipersimd.py
├ SUCCESS: [4/6] 编译成功: memhub.py
├ SUCCESS: [5/6] 编译成功: vipermath.py
├ SUCCESS: [6/6] 编译成功: __init__.py
├ INFO: [清理] 删除 6 个过时文件
├ INFO:
[编译] 找到 1 个 .ll 文件需要编译
├ INFO: 并行编译 1 个文件 (workers=1)
├ ERROR: 2fcb6780db4d937f.ll: llc.exe: error: llc.exe: D:\Users\TermiNexus\Desktop\TransPyC\Test\SimdTest\output\2fcb6780db4d937f_dso.ll:1934:1: error: expected instruction opcode
endif:
^
├ ERROR:
1 个文件编译失败
[FATAL] 方法体编译失败 (ndarray[double].print_arr): Exception: Undefined function: 'printf'
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 32, in HandleBodyLlvm
self.Trans.IfHandler._HandleIfLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesIf.py", line 193, in _HandleIfLlvm
self.Trans.BodyHandler.HandleBodyLlvm(Node.body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 22, in HandleBodyLlvm
self.HandleExprLlvm(Node.value)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 77, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 352, in _HandleCallLlvm
raise Exception(f"Undefined function: '{FuncName}'")
Exception: Undefined function: 'printf'
[FATAL] 方法体编译失败 (ndarray[float].print_arr): Exception: Undefined function: 'printf'
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 32, in HandleBodyLlvm
self.Trans.IfHandler._HandleIfLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesIf.py", line 193, in _HandleIfLlvm
self.Trans.BodyHandler.HandleBodyLlvm(Node.body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 22, in HandleBodyLlvm
self.HandleExprLlvm(Node.value)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 77, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 352, in _HandleCallLlvm
raise Exception(f"Undefined function: '{FuncName}'")
Exception: Undefined function: 'printf'
[FATAL] 方法体编译失败 (ndarray[int].print_arr): Exception: Undefined function: 'printf'
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 32, in HandleBodyLlvm
self.Trans.IfHandler._HandleIfLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesIf.py", line 193, in _HandleIfLlvm
self.Trans.BodyHandler.HandleBodyLlvm(Node.body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 22, in HandleBodyLlvm
self.HandleExprLlvm(Node.value)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 77, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 352, in _HandleCallLlvm
raise Exception(f"Undefined function: '{FuncName}'")
Exception: Undefined function: 'printf'
[FATAL] 方法体编译失败 (ndarray[i32].print_arr): Exception: Undefined function: 'printf'
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 32, in HandleBodyLlvm
self.Trans.IfHandler._HandleIfLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesIf.py", line 193, in _HandleIfLlvm
self.Trans.BodyHandler.HandleBodyLlvm(Node.body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 22, in HandleBodyLlvm
self.HandleExprLlvm(Node.value)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 77, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 352, in _HandleCallLlvm
raise Exception(f"Undefined function: '{FuncName}'")
Exception: Undefined function: 'printf'
[FATAL] 方法体编译失败 (ndarray[i8].sum): Exception: Undefined function: 'CUnsignedChar'
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 30, in HandleBodyLlvm
self.Trans.AnnAssignHandler._HandleAnnAssignLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesAnnAssign.py", line 289, in _HandleAnnAssignLlvm
self._HandleAnnAssignLlvmInner(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesAnnAssign.py", line 487, in _HandleAnnAssignLlvmInner
InitValue = self.HandleExprLlvm(Node.value, VarType=VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBase.py", line 526, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 352, in _HandleCallLlvm
raise Exception(f"Undefined function: '{FuncName}'")
Exception: Undefined function: 'CUnsignedChar'
[FATAL] 方法体编译失败 (ndarray[i8].sum): Exception: Undefined function: 'CUnsignedChar'
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 30, in HandleBodyLlvm
self.Trans.AnnAssignHandler._HandleAnnAssignLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesAnnAssign.py", line 289, in _HandleAnnAssignLlvm
self._HandleAnnAssignLlvmInner(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesAnnAssign.py", line 487, in _HandleAnnAssignLlvmInner
InitValue = self.HandleExprLlvm(Node.value, VarType=VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBase.py", line 526, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 352, in _HandleCallLlvm
raise Exception(f"Undefined function: '{FuncName}'")
Exception: Undefined function: 'CUnsignedChar'
【TestProject】编译失败
├ INFO: 读取配置文件: D:\Users\TermiNexus\Desktop\TransPyC\Test\TestProject\project.json
├ INFO: 项目目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\TestProject
├ INFO: 源目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\TestProject\App
├ INFO: 临时目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\TestProject\temp
├ INFO: 输出目录: D:\Users\TermiNexus\Desktop\TransPyC\Test\TestProject\output
├ INFO: 阶段: all
├ INFO: 编译器: llc -filetype=obj
├ INFO: 目标三元组: x86_64-pc-windows-gnu
├ INFO: 数据布局: e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128
├ INFO: output: 已清空 D:\Users\TermiNexus\Desktop\TransPyC\Test\TestProject\output
├ INFO: temp: 已清空 D:\Users\TermiNexus\Desktop\TransPyC\Test\TestProject\temp
├ INFO: 清理完成
├ INFO: 找到 7 个可达源文件(从入口遍历)
├ INFO: [1/7] 生成签名: config.py
├ INFO: -> 8e0d8fdba991b3b4.pyi (签名)
├ INFO: [2/7] 生成签名: main.py
├ INFO: -> 49cae05490a513cb.pyi (签名)
├ INFO: [3/7] 生成签名: test_numpy.py
├ INFO: -> 3cd87018ba1e76bc.pyi (签名)
├ INFO: [4/7] 生成签名: zc\class_test.py
├ INFO: -> e5fb16127bce8f68.pyi (签名)
├ INFO: [5/7] 生成签名: zc\config.py
├ INFO: -> cfc83b830141b00e.pyi (签名)
├ INFO: [6/7] 生成签名: zc\logic_test.py
├ INFO: -> faec3233d98371da.pyi (签名)
├ INFO: [7/7] 生成签名: zc\test.py
├ INFO: -> 75583f20a922ab2e.pyi (签名)
├ INFO: 处理 12 个被引用的 Python 库文件
├ INFO: 缓存命中(全局): atom.py -> 271ea3decb810db2.pyi
├ INFO: 缓存命中(全局): memhub.py -> f3560b99de458aec.pyi
├ INFO: 缓存命中(全局): numpy\__init__.py -> c3a6aed1f1fb8b1e.pyi
├ INFO: 缓存命中(全局): stdint.py -> f5522571bcce7bcb.pyi
├ INFO: 缓存命中(全局): stdio.py -> 6f62fe05c5ea1ceb.pyi
├ INFO: 缓存命中(全局): stdlib.py -> 90c53dd6db8d41cf.pyi
├ INFO: 缓存命中(全局): string.py -> 9474791561654346.pyi
├ INFO: 缓存命中(全局): testcheck.py -> 14d33679f7fadf1f.pyi
├ INFO: 缓存命中(全局): viperio.py -> c9f4be41ca1cc2b4.pyi
├ INFO: 缓存命中(全局): vipermath.py -> 3f7c5e78d8652535.pyi
├ INFO: 缓存命中(全局): w32\win32base.py -> 7e529fe7a078cfef.pyi
├ INFO: 缓存命中(全局): w32\win32console.py -> bbdf3bbd4c3bc28c.pyi
├ INFO: 结构体注册表: 30 个类型, 1 个枚举
├ INFO: -> 8e0d8fdba991b3b4.stub.ll (声明)
├ INFO: -> 49cae05490a513cb.stub.ll (声明)
├ INFO: -> 3cd87018ba1e76bc.stub.ll (声明)
├ INFO: -> e5fb16127bce8f68.stub.ll (声明)
├ INFO: -> cfc83b830141b00e.stub.ll (声明)
├ INFO: -> faec3233d98371da.stub.ll (声明)
├ INFO: -> 75583f20a922ab2e.stub.ll (声明)
├ INFO: 缓存命中(全局): atom.py -> 271ea3decb810db2.stub.ll
├ INFO: 缓存命中(全局): memhub.py -> f3560b99de458aec.stub.ll
├ INFO: 缓存命中(全局): numpy\__init__.py -> c3a6aed1f1fb8b1e.stub.ll
├ INFO: 缓存命中(全局): stdint.py -> f5522571bcce7bcb.stub.ll
├ INFO: 缓存命中(全局): stdio.py -> 6f62fe05c5ea1ceb.stub.ll
├ INFO: 缓存命中(全局): stdlib.py -> 90c53dd6db8d41cf.stub.ll
├ INFO: 缓存命中(全局): string.py -> 9474791561654346.stub.ll
├ INFO: 缓存命中(全局): testcheck.py -> 14d33679f7fadf1f.stub.ll
├ INFO: 缓存命中(全局): viperio.py -> c9f4be41ca1cc2b4.stub.ll
├ INFO: 缓存命中(全局): vipermath.py -> 3f7c5e78d8652535.stub.ll
├ INFO: 缓存命中(全局): w32\win32base.py -> 7e529fe7a078cfef.stub.ll
├ INFO: 缓存命中(全局): w32\win32console.py -> bbdf3bbd4c3bc28c.stub.ll
├ SUCCESS: 声明接口生成到: D:\Users\TermiNexus\Desktop\TransPyC\Test\TestProject\temp
├ INFO: SHA1 映射表 (19 个文件):
├ INFO: 找到 7 个可达源文件(已按依赖排序)
├ INFO: 处理顺序:
├ INFO: 1. config.py
├ INFO: 2. test_numpy.py
├ INFO: 3. zc\class_test.py
├ INFO: 4. zc\config.py
├ INFO: 5. zc\logic_test.py
├ INFO: 6. zc\test.py
├ INFO: 7. main.py
├ INFO: 过滤旧文件: stub 63->19, sig 114->19
├ INFO: [缓存] 构建共享符号表数据...
├ INFO: [缓存] 共享符号表构建完成 (0.52s, 1199 符号, 5 泛型模板, 57 doc 元数据)
├ INFO:
需要翻译 7 个文件
├ INFO: 并行翻译 (workers=7)
├ INFO: 共享符号表已序列化 (541KB)
├ INFO: -> 8e0d8fdba991b3b4.ll
├ INFO: [1/7] 完成: config.py
├ INFO: -> cfc83b830141b00e.ll
├ INFO: [2/7] 完成: zc\config.py
├ INFO: -> e5fb16127bce8f68.ll
├ INFO: [3/7] 完成: zc\class_test.py
├ INFO: -> faec3233d98371da.ll
├ INFO: [4/7] 完成: zc\logic_test.py
├ INFO: -> 75583f20a922ab2e.ll
├ INFO: [5/7] 完成: zc\test.py
├ INFO: -> 49cae05490a513cb.ll
├ INFO: [6/7] 完成: main.py
├ WARN: HandlesImports: 忽略异常 Undefined function: 'printf'
├ WARN: HandlesImports: 忽略异常 Undefined function: 'printf'
├ WARN: HandlesImports: 忽略异常 Undefined function: 'printf'
├ WARN: HandlesImports: 忽略异常 Undefined function: 'CUnsignedChar'
├ INFO: -> 3cd87018ba1e76bc.ll
├ INFO: [7/7] 完成: test_numpy.py
├ INFO: 翻译总耗时: 8.2s
├ INFO:
[阶段二完成] .ll 文件生成到: D:\Users\TermiNexus\Desktop\TransPyC\Test\TestProject\output
├ INFO: [includes] 发现 Python 源文件: testcheck.py
├ INFO: [includes] 发现 Python 源文件: vipermath.py
├ INFO: [includes] 发现 Python 源文件: stdint.py
├ INFO: [includes] 发现 Python 包文件: numpy\__init__.py
├ INFO: [includes] 发现 Python 源文件: stdlib.py
├ INFO: [includes] 发现 Python 源文件: string.py
├ INFO: [includes] 发现 Python 源文件: stdio.py
├ INFO: [includes] 发现 Python 源文件: memhub.py
├ INFO: [includes] 发现间接依赖: w32\win32console.py
├ INFO: [includes] 发现间接依赖: w32\win32base.py
├ INFO: [includes] 发现间接依赖: atom.py
├ INFO: [includes] 发现间接依赖: viperio.py
├ INFO:
[includes 编译] 找到 12 个 Python 源文件
├ INFO: 跳过(预编译): atom.py -> 271ea3decb810db2.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(声明文件): stdint.py
├ INFO: 跳过(声明文件): stdio.py
├ INFO: 跳过(声明文件): stdlib.py
├ INFO: 跳过(预编译): string.py -> 9474791561654346.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): viperio.py -> c9f4be41ca1cc2b4.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): memhub.py -> f3560b99de458aec.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): vipermath.py -> 3f7c5e78d8652535.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): __init__.py -> c3a6aed1f1fb8b1e.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): win32base.py -> 7e529fe7a078cfef.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): win32console.py -> bbdf3bbd4c3bc28c.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): testcheck.py -> 14d33679f7fadf1f.x86_64-pc-windows-gnu.static.obj
├ INFO:
[编译] 找到 7 个 .ll 文件需要编译
├ INFO: 并行编译 7 个文件 (workers=7)
├ SUCCESS: 8e0d8fdba991b3b4.ll
├ SUCCESS: 49cae05490a513cb.ll
├ ERROR: 3cd87018ba1e76bc.ll: llc.exe: error: llc.exe: D:\Users\TermiNexus\Desktop\TransPyC\Test\TestProject\output\3cd87018ba1e76bc_dso.ll:1761:1: error: expected instruction opcode
endif:
^
├ SUCCESS: e5fb16127bce8f68.ll
├ SUCCESS: cfc83b830141b00e.ll
├ SUCCESS: 75583f20a922ab2e.ll
├ SUCCESS: faec3233d98371da.ll
├ ERROR:
1 个文件编译失败
[FATAL] 方法体编译失败 (ndarray[double].print_arr): Exception: Undefined function: 'printf'
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 32, in HandleBodyLlvm
self.Trans.IfHandler._HandleIfLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesIf.py", line 193, in _HandleIfLlvm
self.Trans.BodyHandler.HandleBodyLlvm(Node.body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 22, in HandleBodyLlvm
self.HandleExprLlvm(Node.value)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 77, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 352, in _HandleCallLlvm
raise Exception(f"Undefined function: '{FuncName}'")
Exception: Undefined function: 'printf'
[FATAL] 方法体编译失败 (ndarray[float].print_arr): Exception: Undefined function: 'printf'
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 32, in HandleBodyLlvm
self.Trans.IfHandler._HandleIfLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesIf.py", line 193, in _HandleIfLlvm
self.Trans.BodyHandler.HandleBodyLlvm(Node.body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 22, in HandleBodyLlvm
self.HandleExprLlvm(Node.value)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 77, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 352, in _HandleCallLlvm
raise Exception(f"Undefined function: '{FuncName}'")
Exception: Undefined function: 'printf'
[FATAL] 方法体编译失败 (ndarray[int].print_arr): Exception: Undefined function: 'printf'
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 32, in HandleBodyLlvm
self.Trans.IfHandler._HandleIfLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesIf.py", line 193, in _HandleIfLlvm
self.Trans.BodyHandler.HandleBodyLlvm(Node.body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 22, in HandleBodyLlvm
self.HandleExprLlvm(Node.value)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 77, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 352, in _HandleCallLlvm
raise Exception(f"Undefined function: '{FuncName}'")
Exception: Undefined function: 'printf'
[FATAL] 方法体编译失败 (ndarray[i32].print_arr): Exception: Undefined function: 'printf'
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 32, in HandleBodyLlvm
self.Trans.IfHandler._HandleIfLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesIf.py", line 193, in _HandleIfLlvm
self.Trans.BodyHandler.HandleBodyLlvm(Node.body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 22, in HandleBodyLlvm
self.HandleExprLlvm(Node.value)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 77, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 352, in _HandleCallLlvm
raise Exception(f"Undefined function: '{FuncName}'")
Exception: Undefined function: 'printf'
[FATAL] 方法体编译失败 (ndarray[i8].sum): Exception: Undefined function: 'CUnsignedChar'
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 30, in HandleBodyLlvm
self.Trans.AnnAssignHandler._HandleAnnAssignLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesAnnAssign.py", line 289, in _HandleAnnAssignLlvm
self._HandleAnnAssignLlvmInner(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesAnnAssign.py", line 487, in _HandleAnnAssignLlvmInner
InitValue = self.HandleExprLlvm(Node.value, VarType=VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBase.py", line 526, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 352, in _HandleCallLlvm
raise Exception(f"Undefined function: '{FuncName}'")
Exception: Undefined function: 'CUnsignedChar'
[FATAL] 方法体编译失败 (ndarray[i8].sum): Exception: Undefined function: 'CUnsignedChar'
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 30, in HandleBodyLlvm
self.Trans.AnnAssignHandler._HandleAnnAssignLlvm(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesAnnAssign.py", line 289, in _HandleAnnAssignLlvm
self._HandleAnnAssignLlvmInner(Node)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesAnnAssign.py", line 487, in _HandleAnnAssignLlvmInner
InitValue = self.HandleExprLlvm(Node.value, VarType=VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBase.py", line 526, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 352, in _HandleCallLlvm
raise Exception(f"Undefined function: '{FuncName}'")
Exception: Undefined function: 'CUnsignedChar'
【TestProject2】编译失败
... (省略前 17 行) ...
├ INFO: 处理 22 个被引用的 Python 库文件
├ INFO: 缓存命中(全局): atom.py -> 271ea3decb810db2.pyi
├ INFO: 生成签名: binascii.py -> 257e074b935c33b4.pyi
├ INFO: 生成签名: hashlib\__init__.py -> 96837bcc64032444.pyi
├ INFO: 生成签名: hashlib\__md5.py -> 19f8024d10c828e8.pyi
├ INFO: 生成签名: hashlib\__sha1.py -> 0df65b8ed15664b0.pyi
├ INFO: 生成签名: hashlib\__sha256.py -> c9d54a4158f7f5a8.pyi
├ INFO: 生成签名: hashlib\__sha512.py -> 6ff26590374ae6fc.pyi
├ INFO: 缓存命中(全局): memhub.py -> f3560b99de458aec.pyi
├ INFO: 缓存命中(全局): stdint.py -> f5522571bcce7bcb.pyi
├ INFO: 缓存命中(全局): stdio.py -> 6f62fe05c5ea1ceb.pyi
├ INFO: 缓存命中(全局): stdlib.py -> 90c53dd6db8d41cf.pyi
├ INFO: 缓存命中(全局): string.py -> 9474791561654346.pyi
├ INFO: 缓存命中(全局): testcheck.py -> 14d33679f7fadf1f.pyi
├ INFO: 缓存命中(全局): viperio.py -> c9f4be41ca1cc2b4.pyi
├ INFO: 缓存命中(全局): w32\win32base.py -> 7e529fe7a078cfef.pyi
├ INFO: 缓存命中(全局): w32\win32console.py -> bbdf3bbd4c3bc28c.pyi
├ INFO: 生成签名: zlib\pyzlib.py -> 1c46d554b3a3f9f3.pyi
├ INFO: 生成签名: zlib\zchecksum.py -> 8ebed83a7817fa0c.pyi
├ INFO: 生成签名: zlib\zdef.py -> 213348433fb01cc6.pyi
├ INFO: 生成签名: zlib\zdeflate.py -> 90921d009fdd674c.pyi
├ INFO: 生成签名: zlib\zhuff.py -> d541ade6afb689a5.pyi
├ INFO: 生成签名: zlib\zinflate.py -> 451745df21e598af.pyi
├ INFO: 结构体注册表: 35 个类型, 0 个枚举
├ INFO: -> 541a1ed9b8be53c8.stub.ll (声明)
├ INFO: -> cfc83b830141b00e.stub.ll (声明)
├ INFO: 缓存命中(全局): atom.py -> 271ea3decb810db2.stub.ll
├ INFO: 生成声明: binascii.py -> 257e074b935c33b4.stub.ll
├ INFO: 生成声明: hashlib\__init__.py -> 96837bcc64032444.stub.ll
├ INFO: 生成声明: hashlib\__md5.py -> 19f8024d10c828e8.stub.ll
├ INFO: 生成声明: hashlib\__sha1.py -> 0df65b8ed15664b0.stub.ll
├ INFO: 生成声明: hashlib\__sha256.py -> c9d54a4158f7f5a8.stub.ll
├ INFO: 生成声明: hashlib\__sha512.py -> 6ff26590374ae6fc.stub.ll
├ INFO: 缓存命中(全局): memhub.py -> f3560b99de458aec.stub.ll
├ INFO: 缓存命中(全局): stdint.py -> f5522571bcce7bcb.stub.ll
├ INFO: 缓存命中(全局): stdio.py -> 6f62fe05c5ea1ceb.stub.ll
├ INFO: 缓存命中(全局): stdlib.py -> 90c53dd6db8d41cf.stub.ll
├ INFO: 缓存命中(全局): string.py -> 9474791561654346.stub.ll
├ INFO: 缓存命中(全局): testcheck.py -> 14d33679f7fadf1f.stub.ll
├ INFO: 缓存命中(全局): viperio.py -> c9f4be41ca1cc2b4.stub.ll
├ INFO: 缓存命中(全局): w32\win32base.py -> 7e529fe7a078cfef.stub.ll
├ INFO: 缓存命中(全局): w32\win32console.py -> bbdf3bbd4c3bc28c.stub.ll
├ INFO: 生成声明: zlib\pyzlib.py -> 1c46d554b3a3f9f3.stub.ll
├ INFO: 生成声明: zlib\zchecksum.py -> 8ebed83a7817fa0c.stub.ll
├ INFO: 生成声明: zlib\zdef.py -> 213348433fb01cc6.stub.ll
├ INFO: 生成声明: zlib\zdeflate.py -> 90921d009fdd674c.stub.ll
├ INFO: 生成声明: zlib\zhuff.py -> d541ade6afb689a5.stub.ll
├ INFO: 生成声明: zlib\zinflate.py -> 451745df21e598af.stub.ll
├ SUCCESS: 声明接口生成到: D:\Users\TermiNexus\Desktop\TransPyC\Test\TestProject2\temp
├ INFO: SHA1 映射表 (24 个文件):
├ INFO: 找到 2 个可达源文件(已按依赖排序)
├ INFO: 处理顺序:
├ INFO: 1. main.py
├ INFO: 2. zc\config.py
├ INFO: 过滤旧文件: stub 70->24, sig 127->24
├ INFO: [缓存] 构建共享符号表数据...
├ INFO: [缓存] 共享符号表构建完成 (0.65s, 951 符号, 5 泛型模板, 58 doc 元数据)
├ INFO:
需要翻译 2 个文件
├ INFO: 并行翻译 (workers=2)
├ INFO: 共享符号表已序列化 (451KB)
├ INFO: -> cfc83b830141b00e.ll
├ INFO: [1/2] 完成: zc\config.py
├ INFO: -> 541a1ed9b8be53c8.ll
├ INFO: [2/2] 完成: main.py
├ INFO: 翻译总耗时: 0.9s
├ INFO:
[阶段二完成] .ll 文件生成到: D:\Users\TermiNexus\Desktop\TransPyC\Test\TestProject2\output
├ INFO: [includes] 发现 Python 包文件: w32\fileio.py
├ INFO: [includes] 发现 Python 包文件: w32\win32base.py
├ INFO: [includes] 发现 Python 包文件: w32\win32console.py
├ INFO: [includes] 发现 Python 包文件: w32\win32file.py
├ INFO: [includes] 发现 Python 包文件: w32\win32memory.py
├ INFO: [includes] 发现 Python 包文件: w32\win32process.py
├ INFO: [includes] 发现 Python 包文件: w32\win32sync.py
├ INFO: [includes] 发现 Python 包文件: w32\winsock2.py
├ INFO: [includes] 发现 Python 源文件: stdint.py
├ INFO: [includes] 发现 Python 源文件: testcheck.py
├ INFO: [includes] 发现 Python 包文件: zlib\pyzlib.py
├ INFO: [includes] 发现 Python 包文件: zlib\zchecksum.py
├ INFO: [includes] 发现 Python 包文件: zlib\zdef.py
├ INFO: [includes] 发现 Python 包文件: zlib\zdeflate.py
├ INFO: [includes] 发现 Python 包文件: zlib\zhuff.py
├ INFO: [includes] 发现 Python 包文件: zlib\zinflate.py
├ INFO: [includes] 发现 Python 包文件: zlib\__init__.py
├ INFO: [includes] 发现 Python 包文件: hashlib\__init__.py
├ INFO: [includes] 发现 Python 包文件: hashlib\__md5.py
├ INFO: [includes] 发现 Python 包文件: hashlib\__sha1.py
├ INFO: [includes] 发现 Python 包文件: hashlib\__sha256.py
├ INFO: [includes] 发现 Python 包文件: hashlib\__sha512.py
├ INFO: [includes] 发现 Python 源文件: binascii.py
├ INFO: [includes] 发现间接依赖: stdio.py
├ INFO: [includes] 发现间接依赖: stdlib.py
├ INFO: [includes] 发现间接依赖: string.py
├ INFO: [includes] 发现间接依赖: memhub.py
├ INFO: [includes] 发现间接依赖: atom.py
├ INFO: [includes] 发现间接依赖: viperio.py
├ INFO:
[includes 编译] 找到 29 个 Python 源文件
├ INFO: 跳过(预编译): atom.py -> 271ea3decb810db2.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(声明文件): stdint.py
├ INFO: 跳过(声明文件): stdio.py
├ INFO: 跳过(声明文件): stdlib.py
├ INFO: 跳过(预编译): string.py -> 9474791561654346.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(声明文件): __init__.py
├ INFO: 跳过(预编译): viperio.py -> c9f4be41ca1cc2b4.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): memhub.py -> f3560b99de458aec.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): win32base.py -> 7e529fe7a078cfef.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): win32console.py -> bbdf3bbd4c3bc28c.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): testcheck.py -> 14d33679f7fadf1f.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): win32file.py -> f6b51804a0ba8ff0.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): fileio.py -> 0035c95a18d4f8e8.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): win32memory.py -> 72e2d5ccb7cedcf1.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): win32process.py -> 067c78e9f121dce3.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): win32sync.py -> 06f53cc594b4ac6c.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(预编译): winsock2.py -> 6446627d4f07a1b5.x86_64-pc-windows-gnu.static.obj
├ INFO: 跳过(声明文件): __init__.py
├ INFO: 翻译 11 个文件
├ INFO: -> c9d54a4158f7f5a8.ll
├ INFO: [1/11] 翻译完成: __sha256.py
├ INFO: -> 257e074b935c33b4.ll
├ INFO: [2/11] 翻译完成: binascii.py
├ ERROR: __sha512.py: Type of #2 arg mismatch: i8* != i32
源代码 (D:\Users\TermiNexus\Desktop\TransPyC\includes\hashlib\__sha512.py, line 48):
48 | memset(self, 0, sha512.__sizeof__())
Type of #2 arg mismatch: i8* != i32
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\Projectrans\Phase2Translator.py", line 1039, in _translate_file
result = trans.Convert(
^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\Shell\TransPyC.py", line 555, in Convert
code: str = self.translator.GenerateCCode(Tree, target='llvm')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Translator\LlvmGenerator.py", line 642, in GenerateCCode
return self.GenerateLlvmDirect(Tree)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Translator\LlvmGenerator.py", line 164, in GenerateLlvmDirect
self.ClassHandler._EmitClassLlvm(Node, Gen)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesClassDef.py", line 675, in _EmitClassLlvm
self.Trans.FunctionHandler._EmitFunctionLlvm(item, Gen, ClassName=ClassName)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 22, in HandleBodyLlvm
self.HandleExprLlvm(Node.value)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 77, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 255, in _HandleCallLlvm
result = self.Trans.ExprBuiltinHandle._HandleBuiltinCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprBuiltin.py", line 185, in _HandleBuiltinCallLlvm
return self._HandleMemsetLlvm(Node.args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprBuiltin.py", line 804, in _HandleMemsetLlvm
Gen.builder.call(memset_func, [dst, val, size], name="memset_call")
File "D:\Python312\Lib\site-packages\llvmlite\ir\builder.py", line 881, in call
inst = instructions.CallInstr(self.block, fn, args, name=name,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Python312\Lib\site-packages\llvmlite\ir\instructions.py", line 105, in __init__
raise TypeError(msg)
TypeError: Type of #2 arg mismatch: i8* != i32
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\Projectrans\Phase2Translator.py", line 89, in _parallel_translate_worker
trans._translate_file(src_path, out_path, prebuilt_ModuleSha1Map=prebuilt_ModuleSha1Map)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\Projectrans\Phase2Translator.py", line 1055, in _translate_file
raise type(e)(enriched) from e
TypeError: Type of #2 arg mismatch: i8* != i32
源代码 (D:\Users\TermiNexus\Desktop\TransPyC\includes\hashlib\__sha512.py, line 48):
48 | memset(self, 0, sha512.__sizeof__())
Type of #2 arg mismatch: i8* != i32
├ INFO: -> 19f8024d10c828e8.ll
├ INFO: [4/11] 翻译完成: __md5.py
├ INFO: -> 0df65b8ed15664b0.ll
├ INFO: [5/11] 翻译完成: __sha1.py
├ INFO: -> 8ebed83a7817fa0c.ll
├ INFO: [6/11] 翻译完成: zchecksum.py
├ INFO: -> 213348433fb01cc6.ll
├ INFO: [7/11] 翻译完成: zdef.py
├ ERROR: zhuff.py: Type of #2 arg mismatch: i8* != i32
源代码 (D:\Users\TermiNexus\Desktop\TransPyC\includes\zlib\zhuff.py, line 32):
32 | memset(bl_count, 0, bl_count.__sizeof__())
Type of #2 arg mismatch: i8* != i32
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\Projectrans\Phase2Translator.py", line 1039, in _translate_file
result = trans.Convert(
^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\Shell\TransPyC.py", line 555, in Convert
code: str = self.translator.GenerateCCode(Tree, target='llvm')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Translator\LlvmGenerator.py", line 642, in GenerateCCode
return self.GenerateLlvmDirect(Tree)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Translator\LlvmGenerator.py", line 164, in GenerateLlvmDirect
self.ClassHandler._EmitClassLlvm(Node, Gen)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesClassDef.py", line 675, in _EmitClassLlvm
self.Trans.FunctionHandler._EmitFunctionLlvm(item, Gen, ClassName=ClassName)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 22, in HandleBodyLlvm
self.HandleExprLlvm(Node.value)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 77, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 255, in _HandleCallLlvm
result = self.Trans.ExprBuiltinHandle._HandleBuiltinCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprBuiltin.py", line 185, in _HandleBuiltinCallLlvm
return self._HandleMemsetLlvm(Node.args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprBuiltin.py", line 804, in _HandleMemsetLlvm
Gen.builder.call(memset_func, [dst, val, size], name="memset_call")
File "D:\Python312\Lib\site-packages\llvmlite\ir\builder.py", line 881, in call
inst = instructions.CallInstr(self.block, fn, args, name=name,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Python312\Lib\site-packages\llvmlite\ir\instructions.py", line 105, in __init__
raise TypeError(msg)
TypeError: Type of #2 arg mismatch: i8* != i32
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\Projectrans\Phase2Translator.py", line 89, in _parallel_translate_worker
trans._translate_file(src_path, out_path, prebuilt_ModuleSha1Map=prebuilt_ModuleSha1Map)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\Projectrans\Phase2Translator.py", line 1055, in _translate_file
raise type(e)(enriched) from e
TypeError: Type of #2 arg mismatch: i8* != i32
源代码 (D:\Users\TermiNexus\Desktop\TransPyC\includes\zlib\zhuff.py, line 32):
32 | memset(bl_count, 0, bl_count.__sizeof__())
Type of #2 arg mismatch: i8* != i32
├ INFO: -> 451745df21e598af.ll
├ INFO: [9/11] 翻译完成: zinflate.py
├ INFO: -> 90921d009fdd674c.ll
├ INFO: [10/11] 翻译完成: zdeflate.py
├ INFO: -> 1c46d554b3a3f9f3.ll
├ INFO: [11/11] 翻译完成: pyzlib.py
├ ERROR:
2 个 include 文件翻译失败
[FATAL] 方法体编译失败 (sha512.__init__): TypeError: Type of #2 arg mismatch: i8* != i32
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 22, in HandleBodyLlvm
self.HandleExprLlvm(Node.value)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 77, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 255, in _HandleCallLlvm
result = self.Trans.ExprBuiltinHandle._HandleBuiltinCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprBuiltin.py", line 185, in _HandleBuiltinCallLlvm
return self._HandleMemsetLlvm(Node.args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprBuiltin.py", line 804, in _HandleMemsetLlvm
Gen.builder.call(memset_func, [dst, val, size], name="memset_call")
File "D:\Python312\Lib\site-packages\llvmlite\ir\builder.py", line 881, in call
inst = instructions.CallInstr(self.block, fn, args, name=name,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Python312\Lib\site-packages\llvmlite\ir\instructions.py", line 105, in __init__
raise TypeError(msg)
TypeError: Type of #2 arg mismatch: i8* != i32
[FATAL] 方法体编译失败 (zhuff_tree.build_codes): TypeError: Type of #2 arg mismatch: i8* != i32
Traceback (most recent call last):
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesFunctions.py", line 1741, in _EmitFunctionLlvm
self.Trans.BodyHandler.HandleBodyLlvm(func_body)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 22, in HandleBodyLlvm
self.HandleExprLlvm(Node.value)
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesBody.py", line 77, in HandleExprLlvm
return self.Trans.ExprHandler.HandleExprLlvm(Node, VarType)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExpr.py", line 63, in HandleExprLlvm
return self.Trans.ExprCallHandle._HandleCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprCall.py", line 255, in _HandleCallLlvm
result = self.Trans.ExprBuiltinHandle._HandleBuiltinCallLlvm(Node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprBuiltin.py", line 185, in _HandleBuiltinCallLlvm
return self._HandleMemsetLlvm(Node.args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Users\TermiNexus\Desktop\TransPyC\lib\core\Handles\HandlesExprBuiltin.py", line 804, in _HandleMemsetLlvm
Gen.builder.call(memset_func, [dst, val, size], name="memset_call")
File "D:\Python312\Lib\site-packages\llvmlite\ir\builder.py", line 881, in call
inst = instructions.CallInstr(self.block, fn, args, name=name,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Python312\Lib\site-packages\llvmlite\ir\instructions.py", line 105, in __init__
raise TypeError(msg)
TypeError: Type of #2 arg mismatch: i8* != i32
【LLvmLiteTest】运行失败 (编译耗时 21.8s)
[运行] LLvmLiteTest.exe: 退出码 3221225477
【StructTest】运行失败 (编译耗时 4.9s)
[运行] StructTest.exe: 退出码 3221225477
======================================================================
有 9 个测试失败,请检查上方详情。
======================================================================