blob: 13da4702f0de0f43b670cc9ac35c3f0cd489a98a [file] [log] [blame]
Index: source/test/testdata/regextst.txt
===================================================================
--- source/test/testdata/regextst.txt (revision 30243)
+++ source/test/testdata/regextst.txt (revision 30244)
@@ -1,4 +1,4 @@
-# Copyright (c) 2001-2010 International Business Machines
+# Copyright (c) 2001-2011 International Business Machines
# Corporation and others. All Rights Reserved.
#
# file:
@@ -1024,11 +1024,15 @@
"(?!0{5})(\d{5})(?!-?0{4})(-?\d{4})?" "<0><1>94040</1><2>-3344</2></0>"
"(?!0{5})(\d{5})(?!-?0{4})(-?\d{4})?" "94040-0000"
"(?!0{5})(\d{5})(?!-?0{4})(-?\d{4})?" "00000-3344"
+
+#
+# Bug 8666. Assertion failure on match, bad operand to JMP_SAV_X opcode.
#
+"((.??)+|A)*" "<0><1><2></2></1></0>AAAAABBBBBCCCCCDDDDEEEEE"
+
# Random debugging, Temporary
#
#"^(?:a?b?)*$" "a--"
-"^(?:a?b?)*$" "a--"
"This is a string with (?:one |two |three )endings" "<0>This is a string with two endings</0>"
"((?:a|b|c)whoop-dee-do) | [jkl]|zed" "x"
Index: source/i18n/regexcmp.cpp
===================================================================
--- source/i18n/regexcmp.cpp (revision 30243)
+++ source/i18n/regexcmp.cpp (revision 30244)
@@ -1962,6 +1962,7 @@
opType == URX_CTR_LOOP ||
opType == URX_CTR_LOOP_NG ||
opType == URX_JMP_SAV ||
+ opType == URX_JMP_SAV_X ||
opType == URX_RELOC_OPRND) && opValue > where) {
// Target location for this opcode is after the insertion point and
// needs to be incremented to adjust for the insertion.