mirror of https://github.com/python/cpython
gh-112388: Fix an error that was causing the parser to try to overwrite tokenizer errors (#112410)
Signed-off-by: Pablo Galindo <pablogsal@gmail.com>
This commit is contained in:
parent
967f2a3052
commit
2c8b191742
|
@ -2349,6 +2349,7 @@ func(
|
|||
|
||||
def test_invisible_characters(self):
|
||||
self._check_error('print\x17("Hello")', "invalid non-printable character")
|
||||
self._check_error(b"with(0,,):\n\x01", "invalid non-printable character")
|
||||
|
||||
def test_match_call_does_not_raise_syntax_error(self):
|
||||
code = """
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
Fix an error that was causing the parser to try to overwrite tokenizer
|
||||
errors. Patch by pablo Galindo
|
|
@ -219,6 +219,10 @@ exit:
|
|||
void *
|
||||
_PyPegen_raise_error(Parser *p, PyObject *errtype, int use_mark, const char *errmsg, ...)
|
||||
{
|
||||
// Bail out if we already have an error set.
|
||||
if (p->error_indicator && PyErr_Occurred()) {
|
||||
return NULL;
|
||||
}
|
||||
if (p->fill == 0) {
|
||||
va_list va;
|
||||
va_start(va, errmsg);
|
||||
|
|
Loading…
Reference in New Issue