SF #926075: Fixed the bug that returns a wrong pattern object for
a string or unicode object in sre.compile() when a different type
pattern with the same value exists.
diff --git a/Lib/test/test_re.py b/Lib/test/test_re.py
index 6ceab6d..9edca6e 100644
--- a/Lib/test/test_re.py
+++ b/Lib/test/test_re.py
@@ -489,6 +489,14 @@
self.assertEqual([item.group(0) for item in iter],
[":", "::", ":::"])
+ def test_bug_926075(self):
+ try:
+ unicode
+ except NameError:
+ return # no problem if we have no unicode
+ self.assert_(re.compile('bug_926075') is not
+ re.compile(eval("u'bug_926075'")))
+
def run_re_tests():
from test.re_tests import benchmarks, tests, SUCCEED, FAIL, SYNTAX_ERROR
if verbose: