mirror of https://github.com/tc39/test262.git
29 lines
562 B
JavaScript
29 lines
562 B
JavaScript
function shouldBe(actual, expected)
|
|
{
|
|
if (actual !== expected)
|
|
throw new Error('bad value: ' + actual);
|
|
}
|
|
|
|
function foo(p) {
|
|
var o = /Hello/;
|
|
if (p) {
|
|
var res = /World/;
|
|
res.lastIndex = o;
|
|
return res;
|
|
}
|
|
}
|
|
|
|
noInline(foo);
|
|
|
|
var array = new Array(1000);
|
|
for (var i = 0; i < 400000; ++i) {
|
|
var o = foo(i & 0x1);
|
|
if (i & 0x1) {
|
|
shouldBe(o instanceof RegExp, true);
|
|
shouldBe(o.toString(), "/World/");
|
|
shouldBe(o.lastIndex.toString(), "/Hello/");
|
|
}
|
|
array[i % array.length] = o;
|
|
}
|
|
|