giles
0410812420
Async error handler: dispatch Eval_error to VM handler_stack in resume_vm
...
When an error occurs during resumed VM execution (after perform/hs-wait),
resume_vm now checks the VM's handler_stack. If a handler exists (from a
compiled guard form's OP_PUSH_HANDLER), it unwinds frames and jumps to
the catch block — exactly like OP_RAISE. This enables try/catch across
async perform/resume boundaries.
The guard form compiles to OP_PUSH_HANDLER which lives on the vm struct
and survives across setTimeout-based async resume. Previously, errors
during resume escaped to the JS console as unhandled exceptions.
Also restored guard in the test runner (was cek-try which doesn't survive
async) and restored error-throwing assertions in run-action.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-17 22:54:37 +00:00
..
2026-04-13 08:26:48 +00:00
2026-04-17 12:53:09 +00:00
2026-04-01 23:19:25 +00:00
2026-04-04 12:18:41 +00:00
2026-04-11 08:52:36 +00:00
2026-04-01 23:19:25 +00:00
2026-04-04 12:18:41 +00:00
2026-04-11 08:52:36 +00:00
2026-04-01 23:19:25 +00:00
2026-04-16 22:15:55 +00:00
2026-04-17 12:53:09 +00:00
2026-04-01 23:19:25 +00:00
2026-04-16 14:00:12 +00:00
2026-04-17 12:53:09 +00:00
2026-04-01 23:19:25 +00:00
2026-04-16 17:08:01 +00:00
2026-04-17 12:53:09 +00:00
2026-04-01 23:19:25 +00:00
2026-04-04 00:08:00 +00:00
2026-04-04 17:11:12 +00:00
2026-04-01 23:19:25 +00:00
2026-04-12 08:41:38 +00:00
2026-04-12 08:41:38 +00:00
2026-04-01 23:19:25 +00:00
2026-04-11 12:49:57 +00:00
2026-04-11 12:49:57 +00:00
2026-04-01 23:19:25 +00:00
2026-04-04 22:52:41 +00:00
2026-04-05 21:18:14 +00:00
2026-04-01 23:19:25 +00:00
2026-04-16 17:08:01 +00:00
2026-04-17 12:53:09 +00:00
2026-04-01 23:19:25 +00:00
2026-04-04 21:31:17 +00:00
2026-04-11 08:52:36 +00:00
2026-04-01 23:19:25 +00:00
2026-04-04 22:52:41 +00:00
2026-04-05 13:28:17 +00:00
2026-04-01 23:19:25 +00:00
2026-04-04 12:18:41 +00:00
2026-04-05 14:38:28 +00:00
2026-04-01 23:19:25 +00:00
2026-04-04 12:18:41 +00:00
2026-04-04 17:11:12 +00:00
2026-04-01 23:19:25 +00:00
2026-04-04 00:08:00 +00:00
2026-04-08 21:44:58 +00:00
2026-04-01 23:19:25 +00:00
2026-04-05 11:05:17 +00:00
2026-04-17 22:54:31 +00:00
2026-04-17 22:54:37 +00:00
2026-04-15 11:56:15 +00:00
2026-04-15 11:56:15 +00:00
2026-04-09 19:59:04 +00:00
2026-04-17 12:53:09 +00:00
2026-04-17 22:54:31 +00:00
2026-04-17 22:54:37 +00:00
2026-04-17 22:54:31 +00:00
2026-04-17 22:54:37 +00:00
2026-04-16 17:08:01 +00:00
2026-04-16 17:08:01 +00:00
2026-04-04 12:18:41 +00:00
2026-04-04 17:11:12 +00:00
2026-04-01 23:19:25 +00:00
2026-04-17 12:53:09 +00:00
2026-04-16 17:08:01 +00:00
2026-04-15 11:56:15 +00:00
2026-04-17 12:53:09 +00:00
2026-04-01 23:19:25 +00:00
2026-04-04 00:08:00 +00:00
2026-04-04 17:11:12 +00:00
2026-04-01 23:19:25 +00:00
2026-04-04 00:08:00 +00:00
2026-04-04 17:11:12 +00:00
2026-04-01 23:19:25 +00:00
2026-04-05 21:18:14 +00:00
2026-04-08 21:44:58 +00:00
2026-04-01 23:19:25 +00:00
2026-04-04 12:18:41 +00:00
2026-04-11 08:52:36 +00:00
2026-04-01 23:19:25 +00:00
2026-04-12 18:31:34 +00:00
2026-04-12 18:31:34 +00:00
2026-04-02 11:31:57 +00:00
2026-04-02 11:31:57 +00:00
2026-04-16 17:08:01 +00:00
2026-04-02 11:31:57 +00:00
2026-04-02 11:31:57 +00:00
2026-04-16 17:08:01 +00:00
2026-04-02 09:37:58 +00:00
2026-04-08 21:44:58 +00:00
2026-04-16 17:08:01 +00:00
2026-04-08 21:44:58 +00:00
2026-04-08 21:44:58 +00:00
2026-04-01 23:19:25 +00:00