load(libdir + "asserts.js");
function test(src) {
assertThrowsInstanceOf(() => eval(src), SyntaxError);
}
test('/(?.)(?.)/');
test('/((?.)(?.))/');
test('/(?.)((?.))/');
test('/((?.))(?.)/');
test('/(?.)(?:.|(?.)/');
test('/(?.)(?:.|(?.)/');
test('/(?.)(?:(.)|(?.)/');
test('/(?.)(?:(?:.)|(?.)/');
test('/(?.)((?.)|(?.))/');
test('/(?.)((?.)|(?.))/');
test('/((?.)|(?.))(?.)/');
test('/((?.)|(?.))(?.)/');
test('/((?.)|((?.)|(?.))(?.)/');
test('/((?.)|((?.)|(?.))(?.)/');
test('/x(?.)((((?.)|(?.))|(?.)|(?.))|(?.))|(?.)y/');
test('/x((?.)(((?.)|(?.))|(?.)|(?.))|(?.))|(?.)y/');
test('/x(((?.)((?.)|(?.))|(?.)|(?.))|(?.))|(?.)y/');
test('/x((((?.)(?.)|(?.))|(?.)|(?.))|(?.))|(?.)y/');
test('/x(?.)|((?.)|(?.)|((?.)|((?.)|(?.)(?.))))y/');
test('/x(?.)|((?.)|(?.)|((?.)|((?.)|(?.))(?.)|((?.)|(?.)|((?.)|((?.)|(?.)))(?.))y/');
test('/x(?.)|((?.)|(?.)|((?.)|((?.)|(?.))))(?.)y/');