Simplify flags checks in sre_compile.py. (GH-9718)
Flags SRE_FLAG_UNICODE and SRE_FLAG_ASCII are mutually exclusive.
diff --git a/Lib/sre_compile.py b/Lib/sre_compile.py
index 3667042..c6398bf 100644
--- a/Lib/sre_compile.py
+++ b/Lib/sre_compile.py
@@ -80,7 +80,7 @@
tolower = None
fixes = None
if flags & SRE_FLAG_IGNORECASE and not flags & SRE_FLAG_LOCALE:
- if flags & SRE_FLAG_UNICODE and not flags & SRE_FLAG_ASCII:
+ if flags & SRE_FLAG_UNICODE:
iscased = _sre.unicode_iscased
tolower = _sre.unicode_tolower
fixes = _ignorecase_fixes
@@ -196,7 +196,7 @@
av = AT_MULTILINE.get(av, av)
if flags & SRE_FLAG_LOCALE:
av = AT_LOCALE.get(av, av)
- elif (flags & SRE_FLAG_UNICODE) and not (flags & SRE_FLAG_ASCII):
+ elif flags & SRE_FLAG_UNICODE:
av = AT_UNICODE.get(av, av)
emit(av)
elif op is BRANCH:
@@ -217,7 +217,7 @@
emit(op)
if flags & SRE_FLAG_LOCALE:
av = CH_LOCALE[av]
- elif (flags & SRE_FLAG_UNICODE) and not (flags & SRE_FLAG_ASCII):
+ elif flags & SRE_FLAG_UNICODE:
av = CH_UNICODE[av]
emit(av)
elif op is GROUPREF:
@@ -265,7 +265,7 @@
elif op is CATEGORY:
if flags & SRE_FLAG_LOCALE:
emit(CH_LOCALE[av])
- elif (flags & SRE_FLAG_UNICODE) and not (flags & SRE_FLAG_ASCII):
+ elif flags & SRE_FLAG_UNICODE:
emit(CH_UNICODE[av])
else:
emit(av)
@@ -453,7 +453,7 @@
def _get_iscased(flags):
if not flags & SRE_FLAG_IGNORECASE:
return None
- elif flags & SRE_FLAG_UNICODE and not flags & SRE_FLAG_ASCII:
+ elif flags & SRE_FLAG_UNICODE:
return _sre.unicode_iscased
else:
return _sre.ascii_iscased