mirror of
https://github.com/vercel-labs/scriptc.git
synced 2026-11-03 07:54:40 +08:00
The compiler-resolved Node throws (error.nodeThrow, the argument and property type throws, undeclared global reads) always leave an exception pending, yet each was followed by the generic pending test and a branch. tsc-ts has 12,177 such sites, mostly the mismatch arms of checked casts and member reads of possibly-undefined values. Unwind unconditionally instead; emission continues in a block without predecessors so the caller's remaining instructions stay well-formed, and LLVM deletes it.