diff options
author | Martin v. Löwis <martin@v.loewis.de> | 2005-03-03 11:45:45 (GMT) |
---|---|---|
committer | Martin v. Löwis <martin@v.loewis.de> | 2005-03-03 11:45:45 (GMT) |
commit | 4bf108d74f2e36f16f4c0c00e7791e418e2d47ff (patch) | |
tree | 5d19f6610a464a81add147dd85fd1e72a8f480a8 | |
parent | a4dac4094acd35810b1497bbf99642fc98afd475 (diff) | |
download | cpython-4bf108d74f2e36f16f4c0c00e7791e418e2d47ff.zip cpython-4bf108d74f2e36f16f4c0c00e7791e418e2d47ff.tar.gz cpython-4bf108d74f2e36f16f4c0c00e7791e418e2d47ff.tar.bz2 |
Patch #802188: better parser error message for non-EOL following line cont.
-rw-r--r-- | Include/errcode.h | 1 | ||||
-rw-r--r-- | Misc/NEWS | 3 | ||||
-rw-r--r-- | Parser/tokenizer.c | 2 | ||||
-rw-r--r-- | Python/pythonrun.c | 3 |
4 files changed, 8 insertions, 1 deletions
diff --git a/Include/errcode.h b/Include/errcode.h index 985911e..becec80 100644 --- a/Include/errcode.h +++ b/Include/errcode.h @@ -28,6 +28,7 @@ extern "C" { #define E_DECODE 22 /* Error in decoding into Unicode */ #define E_EOFS 23 /* EOF in triple-quoted string */ #define E_EOLS 24 /* EOL in single-quoted string */ +#define E_LINECONT 25 /* Unexpected characters after a line continuation */ #ifdef __cplusplus } @@ -10,6 +10,9 @@ What's New in Python 2.5 alpha 1? Core and builtins ----------------- +- Patch #802188: Report characters after line continuation character + ('\') with a specific error message. + - Bug #723201: Raise a TypeError for passing bad objects to 'L' format. - Bug #1124295: the __name__ attribute of file objects was diff --git a/Parser/tokenizer.c b/Parser/tokenizer.c index 8fc2c26..1884d01 100644 --- a/Parser/tokenizer.c +++ b/Parser/tokenizer.c @@ -1413,7 +1413,7 @@ tok_get(register struct tok_state *tok, char **p_start, char **p_end) if (c == '\\') { c = tok_nextc(tok); if (c != '\n') { - tok->done = E_TOKEN; + tok->done = E_LINECONT; tok->cur = tok->inp; return ERRORTOKEN; } diff --git a/Python/pythonrun.c b/Python/pythonrun.c index e9f4765..6d69165 100644 --- a/Python/pythonrun.c +++ b/Python/pythonrun.c @@ -1484,6 +1484,9 @@ err_input(perrdetail *err) msg = "unknown decode error"; break; } + case E_LINECONT: + msg = "unexpected character after line continuation character"; + break; default: fprintf(stderr, "error=%d\n", err->error); msg = "unknown parsing error"; |