bpo-42206: Propagate and raise errors from PyAST_Validate in the parser (GH-23035)
diff --git a/Misc/NEWS.d/next/Core and Builtins/2020-10-30-13-11-01.bpo-42206.xxssR8.rst b/Misc/NEWS.d/next/Core and Builtins/2020-10-30-13-11-01.bpo-42206.xxssR8.rst
new file mode 100644
index 0000000..b9eb135
--- /dev/null
+++ b/Misc/NEWS.d/next/Core and Builtins/2020-10-30-13-11-01.bpo-42206.xxssR8.rst
@@ -0,0 +1,2 @@
+Propagate and raise the errors caused by :c:func:`PyAST_Validate` in the
+parser.
diff --git a/Parser/pegen.c b/Parser/pegen.c
index 827d4da..216edd8 100644
--- a/Parser/pegen.c
+++ b/Parser/pegen.c
@@ -1157,7 +1157,9 @@ _PyPegen_run_parser(Parser *p)
p->start_rule == Py_file_input ||
p->start_rule == Py_eval_input)
{
- assert(PyAST_Validate(res));
+ if (!PyAST_Validate(res)) {
+ return NULL;
+ }
}
#endif
return res;