02:46
<snek>
does anyone know why this is nested like this? https://github.com/tc39/test262/blob/main/harness/regExpUtils.js#L52
02:46
<snek>
my guess is that the outer regexp.test is the actual test, and the inner one is just to find which character failed if one did?
05:07
<snek>
can anyone confirm... when %TypedArray%.prototype.set was changed to not check detached every loop iteration, it seems to have let that fall through to Get/SetValueInBuffer, which immediately does Assert: IsDetached(ta) is false, so we're hitting a spec assertion there now?
05:07
<rkirsling>
ruh roh
05:09
<snek>
relevant test262 test built-ins/TypedArray/prototype/set/array-arg-targetbuffer-detached-on-get-src-value-no-throw.js
05:11
<rkirsling>
wait no
05:11
<rkirsling>
SetValueInBuffer is only reached if IsValidIntegerIndex is true
05:11
<rkirsling>
but it's false if detached
05:13
<snek>
oh i see
13:29
<Richard Gibson>
my guess is that the outer regexp.test is the actual test, and the inner one is just to find which character failed if one did?
Precisely correct. It was introduced to unicode-property-escapes-tests in https://github.com/mathiasbynens/unicode-property-escapes-tests/commit/cdd000582bf44c43d41c921efdaebdacb48dd10d
19:07
<snek>
interesting indeed. i found that if i only run the inner loop, engine262 actually does pass these tests, though it takes a REALLY long time :P
19:09
<snek>
i also tried running it in bun for tail calls but i realized that regex continuations are not always tail recursive so it still overflows