You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(bit_machine): use cursor position instead of frame start for tracker read iterator
The tracker was receiving a bit iterator anchored at the frame's start rather
than the current cursor position. When a `case` node executes inside another
`case` or `drop`, the read frame cursor has already advanced past the start, so
the tracker read stale bits and recorded the wrong branch. This caused
`assertl`/`assertr` pruning to remove the wrong branch after execution.
Adds a regression test covering the specific `comp (pair (injl (injr unit)) unit) (case (case unit unit) unit)` pattern that triggered the bug.
0 commit comments