blob: 21a6bbeca745a272ed4edf937a3b1a21d4eaa65e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
// Make sure that we don't ToString the second argument until /after/ doing
// the appropriate subclassing lookups
var didLookup = false;
var re = /a/;
var flags = { toString() { assertEq(didLookup, true); return "g"; } };
var newRe = Reflect.construct(RegExp, [re, flags],
Object.defineProperty(function(){}.bind(null), "prototype", {
get() {
didLookup = true;
return RegExp.prototype;
}
}));
assertEq(Object.getPrototypeOf(newRe), RegExp.prototype);
assertEq(didLookup, true);
if (typeof reportCompare === 'function')
reportCompare(0,0,"OK");
|