Files
ViperOS/Apps/Explorer
TermiNexus d96362186f fix(explorer): push_event/push_event_pid 补齐第 6 个参数 d,修 llvm.call 操作数个数错
现象:f4160f3611036a68.ll 报 llvm.call 传了 7 个操作数、被调方期望 6。根因是我这边实参个数不一致:签名是 (self,win,etype,a,b,c)(self+5=6),而鼠标三处调用按"再带一个 buttons"写了 6 个实参(self+6=7)。DeskMsg 本来就有 a..d 四个载荷位,window.vp 也早已用 _evt.d 当 button,所以正确修法是把签名补上 d:push_event/push_event_pid 各加一个 d 参数,并把原先少传的 KEY/CLOSE/CREATED 三处补齐。

说明:这不是编译器实现问题 —— 编译器(LLVM verifier)报得准确;只是实参个数这类错误没在前端拦住、漏到了 LLVM 层,属于前端检查的缺口,可另案记录。
2026-10-16 19:24:09 +08:00
..