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
{{ message }}
Repository navigation
gap suite red on main: typed array constructed with a fractional length reports .length === undefined (test_gap_3146, test_gap_4103) #7930
Found while running the gap suite for #7916 (PR #7928). Not caused by that branch — it
reproduces on a clean origin/main build with byte-identical output.
Symptom
A typed array constructed with a fractional length reports .length === undefined.
$ node --experimental-strip-types test_gap_3146_spec_throws.ts
new Int32Array(2.5).length = 2
$ ./perry-compiled
new Int32Array(2.5).length = undefined
ToIndex truncates 2.5 → 2, so the array is built with the right length; only the .length read is wrong, which points at the length accessor / its fast path rather than the
constructor.
Two gap tests are currently red on main because of it
test_gap_3146_spec_throws — new Int32Array(2.5).length
test_gap_4103_typedarray_view_validation — u32 0: ok:undefined / u16 2,2: ok:undefined
where node prints ok:2
Neither is in test-parity/gap_snapshot.json, i.e. the gate expects both to pass, so scripts/run_gap_tests.sh is red on main.
Provenance (A/B'd, not assumed)
Built two compilers from origin/main @ ebefba51a and from the #7928 branch, ran both:
cmp of the two outputs: identical on both tests.
Reproduced with the default build and with PERRY_NO_AUTO_OPTIMIZE=1 + prebuilt
runtime archives, so it is not a knob or link-mode artefact.
Parity is tag-gated (it does not run per-PR since v0.5.1018), which is presumably how this
landed and stayed.
Activity