[Python-checkins] ast.parse: check `feature_version` common case first (GH-94640)
isidentical
webhook-mailer at python.org
Mon Aug 29 10:05:33 EDT 2022
https://github.com/python/cpython/commit/9c2b9348e21a4ba3e995345501898c383972752d
commit: 9c2b9348e21a4ba3e995345501898c383972752d
branch: main
author: Anthony Sottile <asottile at umich.edu>
committer: isidentical <isidentical at gmail.com>
date: 2022-08-29T17:05:24+03:00
summary:
ast.parse: check `feature_version` common case first (GH-94640)
files:
M Lib/ast.py
diff --git a/Lib/ast.py b/Lib/ast.py
index ebf4529f79b0..8af6d1ed14db 100644
--- a/Lib/ast.py
+++ b/Lib/ast.py
@@ -40,13 +40,13 @@ def parse(source, filename='<unknown>', mode='exec', *,
flags = PyCF_ONLY_AST
if type_comments:
flags |= PyCF_TYPE_COMMENTS
- if isinstance(feature_version, tuple):
+ if feature_version is None:
+ feature_version = -1
+ elif isinstance(feature_version, tuple):
major, minor = feature_version # Should be a 2-tuple.
if major != 3:
raise ValueError(f"Unsupported major version: {major}")
feature_version = minor
- elif feature_version is None:
- feature_version = -1
# Else it should be an int giving the minor version for 3.x.
return compile(source, filename, mode, flags,
_feature_version=feature_version)
More information about the Python-checkins
mailing list