regress-315509-02.js (937B)
1 /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ 2 /* This Source Code Form is subject to the terms of the Mozilla Public 3 * License, v. 2.0. If a copy of the MPL was not distributed with this 4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 5 6 //----------------------------------------------------------------------------- 7 var BUGNUMBER = 315509; 8 var summary = 'Array.prototype.unshift do not crash on Arrays with holes'; 9 var actual = 'No Crash'; 10 var expect = 'No Crash'; 11 12 printBugNumber(BUGNUMBER); 13 printStatus (summary); 14 15 function x1() { 16 var a = new Array(1); 17 a.unshift(1); 18 } 19 function x2() { 20 var a = new Array(1); 21 a.unshift.call(a, 1); 22 } 23 function x3() { 24 var a = new Array(1); 25 a.x = a.unshift; 26 a.x(1); 27 } 28 function x4() { 29 var a = new Array(1); 30 a.__defineSetter__("x", a.unshift); 31 a.x = 1; 32 } 33 34 for (var i = 0; i < 10; i++) 35 { 36 x1(); 37 x2(); 38 x3(); 39 x4(); 40 } 41 42 reportCompare(expect, actual, summary);