diff options
author | Lysandros Nikolaou <lisandrosnik@gmail.com> | 2020-05-04 03:20:09 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-05-04 01:20:09 +0100 |
commit | 7f06af684a1882fdb19d20650825948b1d7996e5 (patch) | |
tree | 6106d2c0d2aef7ca76ac522f313a9f54006e97bf | |
parent | ad9eaeab74b680830dbefc18e8fe3dec4677a21b (diff) | |
download | cpython-git-7f06af684a1882fdb19d20650825948b1d7996e5.tar.gz |
bpo-40334: Set error_indicator in _PyPegen_raise_error (GH-19887)
Due to PyErr_Occurred not being called at the beginning of each rule, we need to set the error indicator, so that rules do not get expanded after an exception has been thrown
-rw-r--r-- | Parser/pegen/pegen.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/Parser/pegen/pegen.c b/Parser/pegen/pegen.c index 6ff09b3b31..9858f71c83 100644 --- a/Parser/pegen/pegen.c +++ b/Parser/pegen/pegen.c @@ -389,6 +389,7 @@ _PyPegen_raise_error(Parser *p, PyObject *errtype, int with_col_number, const ch Token *t = p->tokens[p->fill - 1]; Py_ssize_t col_number = !with_col_number; va_list va; + p->error_indicator = 1; va_start(va, errmsg); errstr = PyUnicode_FromFormatV(errmsg, va); |