blob: a69238171701d6477aa75d16a48e01bb1f71f4d7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
// When allocating a bound function in JIT code, ensure it ends up with the
// correct proto.
function f() {
var arr = [function(){}, function(){}];
arr[0].bind = Function.prototype.bind;
arr[1].bind = Function.prototype.bind;
var proto = {};
Object.setPrototypeOf(arr[1], proto);
for (var i = 0; i < 2000; i++) {
var fun = arr[Number(i > 1000)];
var bound = fun.bind(null);
assertEq(Object.getPrototypeOf(bound), i > 1000 ? proto : Function.prototype);
}
}
f();
|