Issue #4

.passive capturing a .raises result crashed hexer

Symptom

A .passive proc that captured a .raises, non-void result crashed hexer: assert n.kind == Symbol.

Root cause

The coroutine transform lifts the result local into the environment as (dot (deref env) fld) — a non-Symbol operand the assertion didn’t expect.

The fix

Copy the non-Symbol operand verbatim instead of asserting it is a Symbol. This removes the crash; full raise-across-await remains a deferred feature (see Known limits).

Files touched: hexer/constparams.nim

Verification

Covered by cps suite.


Back to top

aoughwl — next-gen self-hosted platform for things n stuff. Reach out on Discord (timbuktu_guy) for access to the private backends.

This site uses Just the Docs, a documentation theme for Jekyll.