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
Bug report
Bug description:
I deliberated on whether to post this as its so inconsequential, but the fix (in
ast.pyat least, dunno aboutcompile) is super trivial so might as well. It goes back to 3.10 at least.CPython versions tested on:
CPython main branch
Operating systems tested on:
Linux