Skip to content

test262 built-ins/Array — 49 (self-contained worklist) #5898

Description

@proggeramlug

Self-contained worklist — 49 failing. Snapshot 2026-07-03 full sweep (perry 0.5.1218, node v26.3.0). Everything you need is in this issue; no history to read, no re-measure to start.

Array exotic-object length/index coupling, Array.prototype.* on non-array receivers, iterator done-flag. Crate: perry-runtime (array).

Setup (any box)

git clone https://github.com/PerryTS/perry && cd perry
cargo build --release -p perry -p perry-runtime-static -p perry-stdlib-static
git clone --depth 1 https://github.com/tc39/test262 vendor/test262   # checkout test-compat/test262/pinned-sha.txt
# node on PATH (differential oracle). See test-compat/test262/README.md.

Measure/verify: scripts/test262_subset.py --root vendor/test262 --dir built-ins/Array --jobs 8 (the .failures.txt sidecar lists failures; diff before/after for zero-regression).

Failure reasons

n reason
11 Uncaught exception: Expected a TypeError to be thrown b
10 (no output)
3 Uncaught exception: x.toString() must return "[object A
3 Uncaught exception: Exhausted result 'done' flag (after
3 Uncaught exception: #3: var obj = {}; obj.reverse = Arr
2 Uncaught exception: The value of value is expected to e
2 Uncaught exception: Expected SameValue(«"Bike"», «undef
2 Uncaught exception: #1: Array.prototype[1] = 1; x = [0]
1 Uncaught exception: The value of Array.myproperty is ex
1 TypeError: Function is not a constructor
1 Uncaught exception: Expected SameValue(«function () { [
1 Uncaught exception: Array[1] Expected SameValue(«undefi

All 49 failing cases (path — reason)

built-ins/Array/S15.4.1_A1.1_T2.js    Uncaught exception: x.toString() must return "[object Array]" Expected SameValue
built-ins/Array/S15.4.2.1_A1.1_T2.js    Uncaught exception: x.toString() must return "[object Array]" Expected SameValue
built-ins/Array/S15.4.3_A1.1_T1.js    Uncaught exception: The value of Array.myproperty is expected to be 1 Expected S
built-ins/Array/S15.4.5.2_A3_T3.js    (no output)
built-ins/Array/from/elements-deleted-after.js    Uncaught exception: The value of value is expected to equal the value of array[t
built-ins/Array/from/source-array-boundary.js    Uncaught exception: The value of value is expected to equal the value of array[t
built-ins/Array/length/15.4.5.1-3.d-3.js    (no output)
built-ins/Array/length/S15.4.2.2_A1.1_T2.js    Uncaught exception: x.toString() must return "[object Array]" Expected SameValue
built-ins/Array/length/S15.4.2.2_A2.1_T1.js    (no output)
built-ins/Array/length/S15.4.5.2_A3_T4.js    (no output)
built-ins/Array/of/return-a-new-array-object.js    TypeError: Function is not a constructor
built-ins/Array/of/return-abrupt-from-data-property-using-proxy.js    (no output)
built-ins/Array/prototype/Symbol.iterator.js    Uncaught exception: Expected SameValue(«function () { [native code] }», «functio
built-ins/Array/prototype/entries/iteration-mutable.js    Uncaught exception: Exhausted result `done` flag (after push) Expected SameValue
built-ins/Array/prototype/filter/15.4.4.20-9-b-6.js    Uncaught exception: Array[1] Expected SameValue(«undefined», «6.99») to be true
built-ins/Array/prototype/find/array-altered-during-loop.js    Uncaught exception: Expected SameValue(«"Bike"», «undefined») to be true
built-ins/Array/prototype/findIndex/array-altered-during-loop.js    Uncaught exception: Expected SameValue(«"Bike"», «undefined») to be true
built-ins/Array/prototype/keys/iteration-mutable.js    Uncaught exception: Exhausted result `done` flag (after push) Expected SameValue
built-ins/Array/prototype/pop/S15.4.4.6_A4_T1.js    Uncaught exception: #1: Array.prototype[1] = 1; x = [0]; x.length = 2; x.pop() =
built-ins/Array/prototype/pop/set-length-array-is-frozen.js    Uncaught exception: Expected a TypeError to be thrown but no exception was throw
built-ins/Array/prototype/pop/set-length-array-length-is-non-writable.js    Uncaught exception: Expected a TypeError to be thrown but no exception was throw
built-ins/Array/prototype/push/S15.4.4.7_A2_T2.js    Uncaught exception: Expected a TypeError to be thrown but no exception was throw
built-ins/Array/prototype/push/S15.4.4.7_A3.js    (no output)
built-ins/Array/prototype/push/set-length-array-is-frozen.js    Uncaught exception: Expected a TypeError to be thrown but no exception was throw
built-ins/Array/prototype/push/set-length-array-length-is-non-writable.js    Uncaught exception: Expected a TypeError to be thrown but no exception was throw
built-ins/Array/prototype/push/set-length-zero-array-is-frozen.js    Uncaught exception: Expected a TypeError to be thrown but no exception was throw
built-ins/Array/prototype/push/set-length-zero-array-length-is-non-writable.js    Uncaught exception: Expected a TypeError to be thrown but no exception was throw
built-ins/Array/prototype/reduceRight/15.4.4.22-8-b-iii-1-30.js    Uncaught exception: testResult !== true
built-ins/Array/prototype/reverse/S15.4.4.8_A2_T1.js    Uncaught exception: #3: var obj = {}; obj.reverse = Array.prototype.reverse; obj
built-ins/Array/prototype/reverse/S15.4.4.8_A2_T2.js    Uncaught exception: #3: var obj = {}; obj.reverse = Array.prototype.reverse; obj
built-ins/Array/prototype/reverse/S15.4.4.8_A2_T3.js    Uncaught exception: #3: var obj = {}; obj.reverse = Array.prototype.reverse; obj
built-ins/Array/prototype/reverse/S15.4.4.8_A4_T1.js    Uncaught exception: #1: Array.prototype[1] = 1; x = [0]; x.length = 2; x.reverse
built-ins/Array/prototype/reverse/get_if_present_with_delete.js    Uncaught exception: Indexed property '0' not present Expected SameValue(«true», 
built-ins/Array/prototype/shift/S15.4.4.9_A1.2_T1.js    Uncaught exception: #9: x = []; x[0] = 0; x[3] = 3; x.shift(); x.length = 1; x.s
built-ins/Array/prototype/shift/S15.4.4.9_A4_T1.js    Uncaught exception: #2: Array.prototype[1] = 1; x = [0]; x.length = 2; x.shift()
built-ins/Array/prototype/shift/set-length-array-is-frozen.js    Uncaught exception: Expected a TypeError to be thrown but no exception was throw
built-ins/Array/prototype/shift/set-length-array-length-is-non-writable.js    Uncaught exception: Expected a TypeError to be thrown but no exception was throw
built-ins/Array/prototype/shift/throws-when-this-value-length-is-writable-false.js    Uncaught exception: Array.prototype.shift.call(function() {}) Expected a TypeErr
built-ins/Array/prototype/slice/S15.4.4.10_A3_T1.js    (no output)
built-ins/Array/prototype/slice/S15.4.4.10_A3_T2.js    (no output)
built-ins/Array/prototype/slice/create-non-array-invalid-len.js    (no output)
built-ins/Array/prototype/slice/create-proxied-array-invalid-len.js    (no output)
built-ins/Array/prototype/toLocaleString/primitive_this_value_getter.js    Uncaught exception: Expected SameValue(«"object,object"», «"boolean,boolean"») t
built-ins/Array/prototype/toString/call-with-boolean.js    Uncaught exception: Array.prototype.toString.call(true) must return "[object Boo
built-ins/Array/prototype/unshift/S15.4.4.13_A4_T1.js    Uncaught exception: #7: Object.prototype[0] = -1; Object.prototype.length = 1; O
built-ins/Array/prototype/unshift/S15.4.4.13_A4_T2.js    Uncaught exception: #3: Array.prototype[0] = 1; x = []; x.length = 1; x.unshift(
built-ins/Array/prototype/unshift/set-length-array-is-frozen.js    Uncaught exception: Expected a TypeError to be thrown but no exception was throw
built-ins/Array/prototype/unshift/set-length-array-length-is-non-writable.js    Uncaught exception: Expected a TypeError to be thrown but no exception was throw
built-ins/Array/prototype/values/iteration-mutable.js    Uncaught exception: Exhausted result `done` flag (after push) Expected SameValue

Workflow

Pick a coherent single-root subcluster, localize (cargo run --release -- f.ts --trace hir --focus <fn> / --trace llvm), fix, verify listed cases pass AND re-run the slice for zero regressions. Code-only PR (no Cargo.toml/Cargo.lock version bump, no CLAUDE.md Current-Version, no CHANGELOG — maintainer folds metadata). cargo fmt --all -- --check + bash scripts/check_file_size.sh must pass (files < 2000 lines). Reference this issue. Never reference internal infrastructure hostnames.

Metadata

Metadata

Assignees

No one assigned

    Labels

    parityCompatibility gap with Node.js, ECMAScript, or the supported ecosystem

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions