From 577fb5a1db508444eed7bd78fbf76c1f64ed643b Mon Sep 17 00:00:00 2001
From: Guido van Rossum <guido@python.org>
Date: Mon, 24 Feb 2003 01:18:35 +0000
Subject: [PATCH] Fix from SF patch #633359 by Greg Chapman for SF bug #610299:
     The problem is in sre_compile.py: the call to     _compile_charset near
 the end of _compile_info forgets to     pass in the flags, so that the info
 charset is not compiled     with re.U. (The info charset is used when
 searching to find     the first character at which a match could start; it is
 not     generated for patterns beginning with a repeat like '\w{1}'.)

---
 Lib/sre_compile.py   | 2 +-
 Lib/test/re_tests.py | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/Lib/sre_compile.py b/Lib/sre_compile.py
index e5adb7e46a..bb17649523 100644
--- a/Lib/sre_compile.py
+++ b/Lib/sre_compile.py
@@ -399,7 +399,7 @@ def _compile_info(code, pattern, flags):
                 table[i+1] = table[table[i+1]-1]+1
         code.extend(table[1:]) # don't store first entry
     elif charset:
-        _compile_charset(charset, 0, code)
+        _compile_charset(charset, flags, code)
     code[skip] = len(code) - skip
 
 STRING_TYPES = [type("")]
diff --git a/Lib/test/re_tests.py b/Lib/test/re_tests.py
index 12ad201111..7b237ac5d5 100755
--- a/Lib/test/re_tests.py
+++ b/Lib/test/re_tests.py
@@ -666,4 +666,5 @@ else:
     # bug 410271: \b broken under locales
     (r'\b.\b', 'a', SUCCEED, 'found', 'a'),
     (r'(?u)\b.\b', u, SUCCEED, 'found', u),
+    (r'(?u)\w', u, SUCCEED, 'found', u),
     ])
-- 
2.50.0