Measured 2026-06-23 on an internal Linux sweep host (perry 0.5.1204, node v26.3.0); persistent standing gap (the 2026-06-23 regression #5579 excluded). Split from now-closed umbrella #5346. See test-compat/test262/README.md.
72 failing (test262 @ 2026-06-23 sweep).
Top reasons
| n |
reason |
| 72 |
Error: eval() cannot run in an ahead-of-time compiled binary |
Sample tests
annexB/language/eval-code/direct/func-switch-case-eval-func-block-scoping.js
annexB/language/eval-code/direct/func-switch-case-eval-func-existing-block-fn-no-init.js
annexB/built-ins/RegExp/RegExp-leading-escape-BMP.js
These all need runtime-string eval (B.3.3 sloppy block-function hoisting probed via eval), which Perry's AOT model cannot run (PERRY_ALLOW_EVAL only handles constant-string eval). Decision needed: document as a permanent AOT limitation and _PATH_SKIP/exclude them, or pursue a bounded interpreter fallback. Likely WONTFIX → document.
Measure
scripts/test262_subset.py --root /root/test262 --dir annexB --jobs 6
Measured 2026-06-23 on an internal Linux sweep host (perry 0.5.1204, node v26.3.0); persistent standing gap (the 2026-06-23 regression #5579 excluded). Split from now-closed umbrella #5346. See
test-compat/test262/README.md.72 failing (test262 @ 2026-06-23 sweep).
Top reasons
Error: eval() cannot run in an ahead-of-time compiled binarySample tests
These all need runtime-string
eval(B.3.3 sloppy block-function hoisting probed viaeval), which Perry's AOT model cannot run (PERRY_ALLOW_EVALonly handles constant-string eval). Decision needed: document as a permanent AOT limitation and_PATH_SKIP/exclude them, or pursue a bounded interpreter fallback. Likely WONTFIX → document.Measure