diff --git a/Lib/sre_parse.py b/Lib/sre_parse.py index f6a88517dfc..4ff50d1006a 100644 --- a/Lib/sre_parse.py +++ b/Lib/sre_parse.py @@ -833,14 +833,14 @@ def parse(str, flags=0, pattern=None): assert source.next == ")" 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: # the VERBOSE flag was switched on inside the pattern. to be # on the safe side, we'll parse the whole thing again... return parse(str, p.pattern.flags) + if flags & SRE_FLAG_DEBUG: + p.dump() + return p def parse_template(source, pattern): diff --git a/Misc/NEWS b/Misc/NEWS index 4ce8bf6d032..8cae4f40b02 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -201,6 +201,9 @@ Core and Builtins Library ------- +- Issue #26475: Fixed debugging output for regular expressions with the (?x) + flag. + - Issue #26482: Allowed pickling recursive dequeues. - Issue #26335: Make mmap.write() return the number of bytes written like