regress-280769-3.js (1032B)
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 = 280769; 8 var summary = 'Do not crash on overflow of 64K boundary in number of classes in regexp'; 9 var actual = 'No Crash'; 10 var expect = 'No Crash'; 11 12 printBugNumber(BUGNUMBER); 13 printStatus (summary); 14 15 var N = 100 * 1000; 16 17 status = summary + ' ' + inSection(3) + ' (new RegExp("[0][1]...[99999]").exec("") '; 18 19 var a = new Array(N); 20 21 for (var i = 0; i != N; ++i) { 22 a[i] = i; 23 } 24 25 var str = '['+a.join('][')+']'; // str is [0][1][2]...[<PRINTED N-1>] 26 27 try 28 { 29 var re = new RegExp(str); 30 } 31 catch(e) 32 { 33 printStatus('Exception creating RegExp: ' + e); 34 } 35 36 try 37 { 38 re.exec(''); 39 } 40 catch(e) 41 { 42 printStatus('Exception executing RegExp: ' + e); 43 } 44 45 reportCompare(expect, actual, status);