mirror of
https://github.com/Samsung/escargot.git
synced 2026-06-22 10:01:50 +00:00
`L: for (const v of [...]) { continue L; }` aborted with
Assertion `!v.isEmpty()' failed, and `continue OUTER` from a nested
loop silently terminated the script.
A `continue <label>` whose label targets a for-of loop was left to be
resolved by LabelledStatementNode after the loop body, by which point
the for-of iterator-cleanup try block had registered the jump as a
complex case. It was then morphed into a JumpComplexCase that unwound
the try block, wrongly closing the iterator and leaving an empty Value
in the result register.
A previous per-loop attempt (
|
||
|---|---|---|
| .. | ||
| api | ||
| builtins | ||
| codecache | ||
| debugger | ||
| heap | ||
| interpreter | ||
| intl | ||
| parser | ||
| runtime | ||
| shell | ||
| util | ||
| wasm | ||
| Escargot.h | ||
| EscargotInfo.h.in | ||