jit_compile_lambda now uses the live globals table directly instead of Hashtbl.copy. Closure bindings that aren't already in globals are injected into the live table. This ensures GLOBAL_GET always sees the latest define values. Previously: Hashtbl.copy created a stale snapshot. Functions defined after the copy (like cssx-process-token from cssx.sx) resolved to nil in JIT-compiled closures. JIT error test now passes — 0 CSSX errors during navigation. 7/8 navigation tests pass. Remaining: back button content update. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
3.4 MiB
3.4 MiB