load(libdir + 'asserts.js'); | |
var calls = 0; | |
function g() { | |
calls++; | |
}; | |
function test1() { | |
for (var i=0; i<20; i++) { | |
if (i > 18) | |
g() = 2; | |
} | |
} | |
assertThrowsInstanceOf(test1, ReferenceError); | |
assertEq(calls, 1); | |
function test2() { | |
for (var i=0; i<20; i++) { | |
if (i > 18) | |
g()++; | |
} | |
} | |
assertThrowsInstanceOf(test2, ReferenceError); | |
assertEq(calls, 2); | |
function test3() { | |
for (var i=0; i<20; i++) { | |
if (i > 18) | |
g() >>= 2; | |
} | |
} | |
assertThrowsInstanceOf(test3, ReferenceError); | |
assertEq(calls, 3); |