Index: source/test/testdata/regextst.txt |
diff --git a/source/test/testdata/regextst.txt b/source/test/testdata/regextst.txt |
index 4d2e7f6dcd3425bfaca1df1f10986b65f5a89033..d642e8b9c8b3d33eff50902f46fd97b0af25f955 100644 |
--- a/source/test/testdata/regextst.txt |
+++ b/source/test/testdata/regextst.txt |
@@ -1201,6 +1201,24 @@ |
"A|B|\U00012345" "hello <0>\U00012345</0>" |
"A|B|\U00010000" "hello \ud800" |
+# Bug 11369 |
+# Incorrect optimization of patterns with a zero length quantifier {0} |
+ |
+"(.|b)(|b){0}\$(?#xxx){3}(?>\D*)" "AAAAABBBBBCCCCCDDDDEEEEE" |
+"(|b)ab(c)" "<0><1></1>ab<2>c</2></0>" |
+"(|b){0}a{3}(D*)" "<0>aaa<2></2></0>" |
+"(|b){0,1}a{3}(D*)" "<0><1></1>aaa<2></2></0>" |
+"((|b){0})a{3}(D*)" "<0><1></1>aaa<3></3></0>" |
+ |
+# Bug 11370 |
+# Max match length computation of look-behind expression gives result that is too big to fit in the |
+# in the 24 bit operand portion of the compiled code. Expressions should fail to compile |
+# (Look-behind match length must be bounded. This case is treated as unbounded, an error.) |
+ |
+"(?<!(0123456789a){10000000})x" E "no match" |
+"(?<!\\ubeaf(\\ubeaf{11000}){11000})" E "no match" |
+ |
+ |
# Random debugging, Temporary |
# |