Fix named let: trampoline call_lambda result in sf_named_let
call_lambda returns a thunk (for TCO) but sf_named_let was passing it directly to the CEK machine without trampolining. The loop body never executed — set! mutations were lost and the loop returned immediately. One-line fix: wrap call_lambda result in trampoline. All 87 Node tests now pass: - test-named-let-set.js: 9/9 (was 3/9) - test-highlight.js: 7/7 (was 1/7) - test-smoke.js: 19/19 - test-reactive-islands.sx: 22/22 - test-reactive-islands.js: 39/39 Note: server-side source display still empty because the JIT compiler handles named let differently (VM bytecode path, not tree-walk). The JIT fix is separate. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user