]> granicus.if.org Git - python/commit
bpo-2180: Treat line continuation at EOF as a `SyntaxError` (GH-13401)
authorAnthony Sottile <asottile@umich.edu>
Sat, 18 May 2019 18:27:17 +0000 (11:27 -0700)
committerMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Sat, 18 May 2019 18:27:16 +0000 (11:27 -0700)
commitabea73bf4a320ff658c9a98fef3d948a142e61a9
tree22acd64b07fa3dbfcbd30479900e9b4ca57f8f1e
parente917f2ed9af044fe808fc9b4ddc6c5eb99003500
bpo-2180: Treat line continuation at EOF as a `SyntaxError` (GH-13401)

This makes the parser consistent with the tokenize module (already the case
in `pypy`).

sample
------

```python
x = 5\
```

before
------

```console
$ python3 t.py
$ python3 -mtokenize t.py
t.py:2:0: error: EOF in multi-line statement
```

after
-----

```console
$ ./python t.py
  File "t.py", line 3
    x = 5\

         ^
SyntaxError: unexpected EOF while parsing
$ ./python -m tokenize t.py
t.py:2:0: error: EOF in multi-line statement
```

https://bugs.python.org/issue2180
Lib/test/test_eof.py
Misc/NEWS.d/next/Core and Builtins/2019-05-17-18-34-30.bpo-2180.aBqHeW.rst [new file with mode: 0644]
Parser/tokenizer.c