testMethodWriteBarrier2.js (415B)
1 function C() { 2 this.m = function () {}; // JSOP_SETMETHOD 3 } 4 5 var a = [new C, new C, new C, new C, new C, new C, new C, new C, new C]; 6 var b = [new C, new C, new C, new C, new C, new C, a[8], new C, new C]; 7 8 var thrown = 'none'; 9 try { 10 for (var i = 0; i < 9; i++) { 11 a[i].m(); 12 b[i].m = 0.7; // MethodWriteBarrier required here 13 } 14 } catch (exc) { 15 thrown = exc.name; 16 } 17 assertEq(thrown, 'TypeError');