summaryrefslogtreecommitdiff
path: root/js/src/jit-test/tests/pic/watch3b.js
blob: 9b0dc8cc95746339585ff48269a7633ed61281ab (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// assignment to watched global properties must not be traced
var hits = 0;
function counter(id, oldval, newval) {
    hits++;
    return newval;
}

var x = 0;
var y = 0;
function f() {
    var a = [{}, this];
    for (var i = 0; i < 14; i++) {
        print(shapeOf(this));
        Object.prototype.watch.call(a[+(i > 8)], "y", counter);
        y++;
    }
}
f();
assertEq(hits, 5);