[3.9] bpo-34480: fix bug where match variable is used prior to being defined (GH-17643) #32256
+27
−0
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
This is technically not a backport of the referenced PR because the original PR was superseded by another one and as such was not accepted. I was asked to base this change on the original one because the one that superseded it and was implemented in Python 3.10 was larger in scope and technically considered a breaking change.
This PR fixes bpo-34480. I'm adding two unit tests, one of which is based on a test case included in one of the comments and I want to give full credit for writing it to the original author Karthikeyan Singaravelan (xtreak).
https://bugs.python.org/issue34480