Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A SyntaxError less detailed since 3.10 in specific example #94192

Open
Serpens66 opened this issue Jun 24, 2022 · 1 comment
Open

A SyntaxError less detailed since 3.10 in specific example #94192

Serpens66 opened this issue Jun 24, 2022 · 1 comment
Labels
interpreter-core type-bug

Comments

@Serpens66
Copy link

@Serpens66 Serpens66 commented Jun 24, 2022

Python 3.10.5

New SyntaxError ^ pointer is misleading in following example compared to older python versions.

d = { "foo":"foo", "bar":lambda b:{"bar":testfn(von="1"b=b)}, }
(code written in 4 lines, but github...)

Results in error message on 3.10.5:

File "test.py", line 3
"bar":lambda b:{"bar":testfn(von="1"b=b)},
^
SyntaxError: expression expected after dictionary key and ':'

While on python 3.8 it was more helpful:

File "test.py", line 3
"bar":lambda b:{"bar":testfn(von="1"b=b)},
^
SyntaxError: invalid syntax

(the formatting of this "^" seems to be not correct here at github. On 3.10.5 it is pointing on the ":" prior to lambda, while on 3.8 it is pointing on the missing comma)

@Serpens66 Serpens66 added the type-bug label Jun 24, 2022
@AlexWaygood AlexWaygood added the interpreter-core label Jun 24, 2022
@hauntsaninja
Copy link
Contributor

@hauntsaninja hauntsaninja commented Jun 24, 2022

You can use triple backquotes (```) to preserve formatting on Github.

λ python3.9
Python 3.9.12 (main, Apr 16 2022, 17:49:09) 
[Clang 13.0.0 (clang-1300.0.27.3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> d = { "foo":"foo", "bar":lambda b:{"bar":testfn(von="1"b=b)}, }
  File "<stdin>", line 1
    d = { "foo":"foo", "bar":lambda b:{"bar":testfn(von="1"b=b)}, }
                                                           ^
SyntaxError: invalid syntax

λ python3.10
Python 3.10.5 (main, Jun 18 2022, 23:46:13) [Clang 13.0.0 (clang-1300.0.27.3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> d = { "foo":"foo", "bar":lambda b:{"bar":testfn(von="1"b=b)}, }
  File "<stdin>", line 1
    d = { "foo":"foo", "bar":lambda b:{"bar":testfn(von="1"b=b)}, }
                            ^
SyntaxError: expression expected after dictionary key and ':'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
interpreter-core type-bug
Projects
None yet
Development

No branches or pull requests

3 participants