- MatchGenMixin: 2a 路径查变体 tag 改用裸类名(注解书写形态带模块前缀,与变体表裸名注册口径不一致致 tag=-1、case 被静默丢弃、match 全走 default),并在 build_switch 前硬校验 应提交 case 数==sw_count,不再静默丢 - ExprGenCdef: _const_int_for_cdefine 补 value < -2147483648 下限判据,修正 (0xA5A5A5A5<<32)|0xA5A5A5A5 等负 64 位模式被物化为 i32(写入 inttoptr 零扩展 vs 比较 sext 不一致,致 MemBuddy canary 假阳性 rc=6) - FuncGenDef/ClassGenVTable: 掉尾检查新增注解级 void 判据(t.CVoid/裸名 CVoid/None),不再因 REnum match 退化误判 void 函数缺 return - StubMergerBuild: 移植 TPC 的 类型定义前移 遍,满足 llc 对 by-value 具名类型需先定义的要求(invalid type for function argument) - main.vp/Phase1Main.vp/project.vpj: 新增 --detection-deep 深诊断开关与 canary 哨兵、ASan 静态库声明
33 lines
1.2 KiB
Plaintext
33 lines
1.2 KiB
Plaintext
{
|
|
"$schema": "https://raw.githubusercontent.com/TermiNexus/TransPyC/main/schemas/project-schema.json",
|
|
"name": "TransPyV",
|
|
"version": "1.0.0",
|
|
"source_dir": "./App",
|
|
"build_dir": "./.tpv_build",
|
|
"compiler": {
|
|
"cmd": "llc",
|
|
"flags": ["-filetype=obj", "-relocation-model=pic"]
|
|
},
|
|
"linker": {
|
|
"cmd": "D:/msys64/mingw64/bin/clang++.exe",
|
|
"flags": ["-fuse-ld=lld", "-lmsvcrt", "-lucrt", "-lpthread", "-lmingwex", "-lkernel32", "-Wl,--allow-multiple-definition", "-Wl,--stack,0x1000000", "-Wl,--no-insert-timestamp"],
|
|
"static_libs": [
|
|
"D:/msys64/clang64/lib/clang/22/lib/windows/libclang_rt.asan_dynamic-x86_64.dll.a",
|
|
"D:/msys64/clang64/lib/clang/22/lib/windows/libclang_rt.asan_dynamic_runtime_thunk-x86_64.a"
|
|
],
|
|
"output": "TransPyV.exe"
|
|
},
|
|
"includes": [
|
|
"../includes"
|
|
],
|
|
"target": {
|
|
"triple": "x86_64-pc-windows-gnu",
|
|
"datalayout": "e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
|
|
},
|
|
"options": {
|
|
"slice_level": 3,
|
|
"sha1_slice_level": 1,
|
|
"target": "llvm",
|
|
"strict_mode": true
|
|
}
|
|
} |