summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/ion/setelem-proto.js
blob: d24e2e514b23991eaea1b9a095c8c90089278bb3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
var a = [1, 2, 3, 4];
var count = 0;

function f(arr, i) {
    arr[2] = i;
}

for (var i=0; i<80; i++) {
    f(a, i);
    assertEq(a[2], i);
}

delete a[2];
f(a, 50);
assertEq(a[2], 50);

Object.defineProperty(Object.prototype, "2", {
    set: function() { count++; }
});
delete a[2];

f(a, 100);
f(a, 100);

assertEq(a[2], undefined);
assertEq(count, 2);