js/src/jit-test/tests/basic/testBug502914.js

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:75c98f2cbdc5
1 function testBug502914() {
2 // Assigning a non-function to a function-valued property on trace should
3 // bump the shape.
4 function f1() {}
5 function C() {}
6 var x = C.prototype = {m: f1};
7 x.m(); // brand scope
8 var arr = [new C, new C, new C, x];
9 try {
10 for (var i = 0; i < 4; i++) {
11 arr[i].m = 12;
12 x.m(); // should throw last time through
13 }
14 } catch (exc) {
15 return exc.constructor.name;
16 }
17 return "no exception";
18 }
19 assertEq(testBug502914(), "TypeError");

mercurial