Issue #26475: Fixed debugging output for regular expressions with the (?x) flag.

This commit is contained in:
Serhiy Storchaka 2016-03-06 09:15:47 +02:00
parent be70002866
commit a01a144aab
2 changed files with 6 additions and 3 deletions

View File

@ -833,14 +833,14 @@ def parse(str, flags=0, pattern=None):
assert source.next == ")" assert source.next == ")"
raise source.error("unbalanced parenthesis") raise source.error("unbalanced parenthesis")
if flags & SRE_FLAG_DEBUG:
p.dump()
if not (flags & SRE_FLAG_VERBOSE) and p.pattern.flags & SRE_FLAG_VERBOSE: if not (flags & SRE_FLAG_VERBOSE) and p.pattern.flags & SRE_FLAG_VERBOSE:
# the VERBOSE flag was switched on inside the pattern. to be # the VERBOSE flag was switched on inside the pattern. to be
# on the safe side, we'll parse the whole thing again... # on the safe side, we'll parse the whole thing again...
return parse(str, p.pattern.flags) return parse(str, p.pattern.flags)
if flags & SRE_FLAG_DEBUG:
p.dump()
return p return p
def parse_template(source, pattern): def parse_template(source, pattern):

View File

@ -91,6 +91,9 @@ Core and Builtins
Library Library
------- -------
- Issue #26475: Fixed debugging output for regular expressions with the (?x)
flag.
- Issue #26457: Fixed the subnets() methods in IP network classes for the case - Issue #26457: Fixed the subnets() methods in IP network classes for the case
when resulting prefix length is equal to maximal prefix length. when resulting prefix length is equal to maximal prefix length.
Based on patch by Xiang Zhang. Based on patch by Xiang Zhang.