-
-
Notifications
You must be signed in to change notification settings - Fork 33.6k
Closed as not planned
Closed as not planned
Copy link
Labels
pendingThe issue will be closed if no feedback is providedThe issue will be closed if no feedback is providedstdlibStandard Library Python modules in the Lib/ directoryStandard Library Python modules in the Lib/ directorytopic-parsertype-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error
Description
Bug report
Bug description:
I deliberated on whether to post this as its so inconsequential, but the fix (in ast.py at least, dunno about compile) is super trivial so might as well. It goes back to 3.10 at least.
>>> ast.parse('pass', mode='exec')
Module(body=[Pass()], type_ignores=[])
>>> ast.parse('pass', mode='single')
Interactive(body=[Pass()])
>>> ast.parse('if 1: pass', mode='exec')
Module(body=[If(test=Constant(value=1, kind=None), body=[Pass()], orelse=[])], type_ignores=[])
>>> ast.parse('if 1: pass', mode='single')
Traceback (most recent call last):
File "<python-input-4>", line 1, in <module>
ast.parse('if 1: pass', mode='single')
~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/tom/work/cpython/main/cp/Lib/ast.py", line 46, in parse
return compile(source, filename, mode, flags,
_feature_version=feature_version, optimize=optimize)
File "<unknown>", line 1
if 1: pass
SyntaxError: invalid syntax
>>> ast.parse('if 1: pass\n', mode='single')
Interactive(body=[If(test=Constant(value=1, kind=None), body=[Pass()], orelse=[])])CPython versions tested on:
CPython main branch
Operating systems tested on:
Linux
Metadata
Metadata
Assignees
Labels
pendingThe issue will be closed if no feedback is providedThe issue will be closed if no feedback is providedstdlibStandard Library Python modules in the Lib/ directoryStandard Library Python modules in the Lib/ directorytopic-parsertype-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error