Backed out 14 changesets (bug 1865005, bug 1864168, bug 1864155, bug 1862814, bug...
[gecko.git] / js / src / jit-test / tests / regexp / huge-01.js
blobbc1529f0c66c12cc9047bb0a76c398ae9448c7c8
2 function g(N, p) {
3     var prefix = p.repeat(N);
4     var str = prefix + "[AB]";
6     try {
7         var re = new RegExp(str);
8         re.exec(prefix + "A");
9     } catch(e) {
10         // 1. Regexp too big is raised by the lack of the 64k virtual registers
11         // reserved for the regexp evaluation.
12         // 2. The stack overflow can occur during the analysis of the regexp
13         assertEq(e.message.includes("regexp too big") ||
14                  e.message.includes("Stack overflow") ||
15                  e.message.includes("too much recursion"), true);
16     }
19 var prefix = "/(?=k)ok/";
20 for (var i = 0; i < 18; i++)
21     g(Math.pow(2, i), prefix)