gh-99300: Use Py_NewRef() in Python/Python-ast.c (#99499)

Replace Py_INCREF() and Py_XINCREF() with Py_NewRef() and
Py_XNewRef() in Python/Python-ast.c.

Update Parser/asdl_c.py to regenerate code.
This commit is contained in:
Victor Stinner 2022-11-15 10:29:56 +01:00 committed by GitHub
parent ee821dcd39
commit f13f466474
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 78 additions and 144 deletions

View File

@ -675,8 +675,7 @@ class Obj2ModVisitor(PickleVisitor):
self.emit("if (%s == NULL) goto failed;" % field.name, depth+1) self.emit("if (%s == NULL) goto failed;" % field.name, depth+1)
self.emit("for (i = 0; i < len; i++) {", depth+1) self.emit("for (i = 0; i < len; i++) {", depth+1)
self.emit("%s val;" % ctype, depth+2) self.emit("%s val;" % ctype, depth+2)
self.emit("PyObject *tmp2 = PyList_GET_ITEM(tmp, i);", depth+2) self.emit("PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));", depth+2)
self.emit("Py_INCREF(tmp2);", depth+2)
with self.recursive_call(name, depth+2): with self.recursive_call(name, depth+2):
self.emit("res = obj2ast_%s(state, tmp2, &val, arena);" % self.emit("res = obj2ast_%s(state, tmp2, &val, arena);" %
field.type, depth+2, reflow=False) field.type, depth+2, reflow=False)
@ -1021,9 +1020,11 @@ static int obj2ast_object(struct ast_state *Py_UNUSED(state), PyObject* obj, PyO
*out = NULL; *out = NULL;
return -1; return -1;
} }
Py_INCREF(obj); *out = Py_NewRef(obj);
}
else {
*out = NULL;
} }
*out = obj;
return 0; return 0;
} }

213
Python/Python-ast.c generated
View File

@ -1023,9 +1023,11 @@ static int obj2ast_object(struct ast_state *Py_UNUSED(state), PyObject* obj, PyO
*out = NULL; *out = NULL;
return -1; return -1;
} }
Py_INCREF(obj); *out = Py_NewRef(obj);
}
else {
*out = NULL;
} }
*out = obj;
return 0; return 0;
} }
@ -5483,8 +5485,7 @@ obj2ast_mod(struct ast_state *state, PyObject* obj, mod_ty* out, PyArena* arena)
if (body == NULL) goto failed; if (body == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Module' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Module' node")) {
goto failed; goto failed;
} }
@ -5520,8 +5521,7 @@ obj2ast_mod(struct ast_state *state, PyObject* obj, mod_ty* out, PyArena* arena)
if (type_ignores == NULL) goto failed; if (type_ignores == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
type_ignore_ty val; type_ignore_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Module' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Module' node")) {
goto failed; goto failed;
} }
@ -5569,8 +5569,7 @@ obj2ast_mod(struct ast_state *state, PyObject* obj, mod_ty* out, PyArena* arena)
if (body == NULL) goto failed; if (body == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Interactive' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Interactive' node")) {
goto failed; goto failed;
} }
@ -5648,8 +5647,7 @@ obj2ast_mod(struct ast_state *state, PyObject* obj, mod_ty* out, PyArena* arena)
if (argtypes == NULL) goto failed; if (argtypes == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'FunctionType' node")) { if (_Py_EnterRecursiveCall(" while traversing 'FunctionType' node")) {
goto failed; goto failed;
} }
@ -5845,8 +5843,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (body == NULL) goto failed; if (body == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'FunctionDef' node")) { if (_Py_EnterRecursiveCall(" while traversing 'FunctionDef' node")) {
goto failed; goto failed;
} }
@ -5882,8 +5879,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (decorator_list == NULL) goto failed; if (decorator_list == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'FunctionDef' node")) { if (_Py_EnterRecursiveCall(" while traversing 'FunctionDef' node")) {
goto failed; goto failed;
} }
@ -6006,8 +6002,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (body == NULL) goto failed; if (body == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'AsyncFunctionDef' node")) { if (_Py_EnterRecursiveCall(" while traversing 'AsyncFunctionDef' node")) {
goto failed; goto failed;
} }
@ -6043,8 +6038,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (decorator_list == NULL) goto failed; if (decorator_list == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'AsyncFunctionDef' node")) { if (_Py_EnterRecursiveCall(" while traversing 'AsyncFunctionDef' node")) {
goto failed; goto failed;
} }
@ -6150,8 +6144,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (bases == NULL) goto failed; if (bases == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'ClassDef' node")) { if (_Py_EnterRecursiveCall(" while traversing 'ClassDef' node")) {
goto failed; goto failed;
} }
@ -6187,8 +6180,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (keywords == NULL) goto failed; if (keywords == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
keyword_ty val; keyword_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'ClassDef' node")) { if (_Py_EnterRecursiveCall(" while traversing 'ClassDef' node")) {
goto failed; goto failed;
} }
@ -6224,8 +6216,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (body == NULL) goto failed; if (body == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'ClassDef' node")) { if (_Py_EnterRecursiveCall(" while traversing 'ClassDef' node")) {
goto failed; goto failed;
} }
@ -6261,8 +6252,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (decorator_list == NULL) goto failed; if (decorator_list == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'ClassDef' node")) { if (_Py_EnterRecursiveCall(" while traversing 'ClassDef' node")) {
goto failed; goto failed;
} }
@ -6342,8 +6332,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (targets == NULL) goto failed; if (targets == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Delete' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Delete' node")) {
goto failed; goto failed;
} }
@ -6394,8 +6383,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (targets == NULL) goto failed; if (targets == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Assign' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Assign' node")) {
goto failed; goto failed;
} }
@ -6666,8 +6654,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (body == NULL) goto failed; if (body == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'For' node")) { if (_Py_EnterRecursiveCall(" while traversing 'For' node")) {
goto failed; goto failed;
} }
@ -6703,8 +6690,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (orelse == NULL) goto failed; if (orelse == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'For' node")) { if (_Py_EnterRecursiveCall(" while traversing 'For' node")) {
goto failed; goto failed;
} }
@ -6808,8 +6794,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (body == NULL) goto failed; if (body == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'AsyncFor' node")) { if (_Py_EnterRecursiveCall(" while traversing 'AsyncFor' node")) {
goto failed; goto failed;
} }
@ -6845,8 +6830,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (orelse == NULL) goto failed; if (orelse == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'AsyncFor' node")) { if (_Py_EnterRecursiveCall(" while traversing 'AsyncFor' node")) {
goto failed; goto failed;
} }
@ -6932,8 +6916,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (body == NULL) goto failed; if (body == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'While' node")) { if (_Py_EnterRecursiveCall(" while traversing 'While' node")) {
goto failed; goto failed;
} }
@ -6969,8 +6952,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (orelse == NULL) goto failed; if (orelse == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'While' node")) { if (_Py_EnterRecursiveCall(" while traversing 'While' node")) {
goto failed; goto failed;
} }
@ -7038,8 +7020,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (body == NULL) goto failed; if (body == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'If' node")) { if (_Py_EnterRecursiveCall(" while traversing 'If' node")) {
goto failed; goto failed;
} }
@ -7075,8 +7056,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (orelse == NULL) goto failed; if (orelse == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'If' node")) { if (_Py_EnterRecursiveCall(" while traversing 'If' node")) {
goto failed; goto failed;
} }
@ -7127,8 +7107,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (items == NULL) goto failed; if (items == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
withitem_ty val; withitem_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'With' node")) { if (_Py_EnterRecursiveCall(" while traversing 'With' node")) {
goto failed; goto failed;
} }
@ -7164,8 +7143,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (body == NULL) goto failed; if (body == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'With' node")) { if (_Py_EnterRecursiveCall(" while traversing 'With' node")) {
goto failed; goto failed;
} }
@ -7233,8 +7211,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (items == NULL) goto failed; if (items == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
withitem_ty val; withitem_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'AsyncWith' node")) { if (_Py_EnterRecursiveCall(" while traversing 'AsyncWith' node")) {
goto failed; goto failed;
} }
@ -7270,8 +7247,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (body == NULL) goto failed; if (body == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'AsyncWith' node")) { if (_Py_EnterRecursiveCall(" while traversing 'AsyncWith' node")) {
goto failed; goto failed;
} }
@ -7355,8 +7331,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (cases == NULL) goto failed; if (cases == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
match_case_ty val; match_case_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Match' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Match' node")) {
goto failed; goto failed;
} }
@ -7456,8 +7431,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (body == NULL) goto failed; if (body == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Try' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Try' node")) {
goto failed; goto failed;
} }
@ -7493,8 +7467,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (handlers == NULL) goto failed; if (handlers == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
excepthandler_ty val; excepthandler_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Try' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Try' node")) {
goto failed; goto failed;
} }
@ -7530,8 +7503,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (orelse == NULL) goto failed; if (orelse == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Try' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Try' node")) {
goto failed; goto failed;
} }
@ -7567,8 +7539,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (finalbody == NULL) goto failed; if (finalbody == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Try' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Try' node")) {
goto failed; goto failed;
} }
@ -7620,8 +7591,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (body == NULL) goto failed; if (body == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'TryStar' node")) { if (_Py_EnterRecursiveCall(" while traversing 'TryStar' node")) {
goto failed; goto failed;
} }
@ -7657,8 +7627,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (handlers == NULL) goto failed; if (handlers == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
excepthandler_ty val; excepthandler_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'TryStar' node")) { if (_Py_EnterRecursiveCall(" while traversing 'TryStar' node")) {
goto failed; goto failed;
} }
@ -7694,8 +7663,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (orelse == NULL) goto failed; if (orelse == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'TryStar' node")) { if (_Py_EnterRecursiveCall(" while traversing 'TryStar' node")) {
goto failed; goto failed;
} }
@ -7731,8 +7699,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (finalbody == NULL) goto failed; if (finalbody == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'TryStar' node")) { if (_Py_EnterRecursiveCall(" while traversing 'TryStar' node")) {
goto failed; goto failed;
} }
@ -7829,8 +7796,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (names == NULL) goto failed; if (names == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
alias_ty val; alias_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Import' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Import' node")) {
goto failed; goto failed;
} }
@ -7898,8 +7864,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (names == NULL) goto failed; if (names == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
alias_ty val; alias_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'ImportFrom' node")) { if (_Py_EnterRecursiveCall(" while traversing 'ImportFrom' node")) {
goto failed; goto failed;
} }
@ -7965,8 +7930,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (names == NULL) goto failed; if (names == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
identifier val; identifier val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Global' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Global' node")) {
goto failed; goto failed;
} }
@ -8015,8 +7979,7 @@ obj2ast_stmt(struct ast_state *state, PyObject* obj, stmt_ty* out, PyArena*
if (names == NULL) goto failed; if (names == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
identifier val; identifier val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Nonlocal' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Nonlocal' node")) {
goto failed; goto failed;
} }
@ -8241,8 +8204,7 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
if (values == NULL) goto failed; if (values == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'BoolOp' node")) { if (_Py_EnterRecursiveCall(" while traversing 'BoolOp' node")) {
goto failed; goto failed;
} }
@ -8568,8 +8530,7 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
if (keys == NULL) goto failed; if (keys == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Dict' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Dict' node")) {
goto failed; goto failed;
} }
@ -8605,8 +8566,7 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
if (values == NULL) goto failed; if (values == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Dict' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Dict' node")) {
goto failed; goto failed;
} }
@ -8655,8 +8615,7 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
if (elts == NULL) goto failed; if (elts == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Set' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Set' node")) {
goto failed; goto failed;
} }
@ -8723,8 +8682,7 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
if (generators == NULL) goto failed; if (generators == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
comprehension_ty val; comprehension_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'ListComp' node")) { if (_Py_EnterRecursiveCall(" while traversing 'ListComp' node")) {
goto failed; goto failed;
} }
@ -8791,8 +8749,7 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
if (generators == NULL) goto failed; if (generators == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
comprehension_ty val; comprehension_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'SetComp' node")) { if (_Py_EnterRecursiveCall(" while traversing 'SetComp' node")) {
goto failed; goto failed;
} }
@ -8877,8 +8834,7 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
if (generators == NULL) goto failed; if (generators == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
comprehension_ty val; comprehension_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'DictComp' node")) { if (_Py_EnterRecursiveCall(" while traversing 'DictComp' node")) {
goto failed; goto failed;
} }
@ -8945,8 +8901,7 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
if (generators == NULL) goto failed; if (generators == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
comprehension_ty val; comprehension_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'GeneratorExp' node")) { if (_Py_EnterRecursiveCall(" while traversing 'GeneratorExp' node")) {
goto failed; goto failed;
} }
@ -9104,8 +9059,7 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
if (ops == NULL) goto failed; if (ops == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
cmpop_ty val; cmpop_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Compare' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Compare' node")) {
goto failed; goto failed;
} }
@ -9141,8 +9095,7 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
if (comparators == NULL) goto failed; if (comparators == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Compare' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Compare' node")) {
goto failed; goto failed;
} }
@ -9210,8 +9163,7 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
if (args == NULL) goto failed; if (args == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Call' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Call' node")) {
goto failed; goto failed;
} }
@ -9247,8 +9199,7 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
if (keywords == NULL) goto failed; if (keywords == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
keyword_ty val; keyword_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Call' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Call' node")) {
goto failed; goto failed;
} }
@ -9364,8 +9315,7 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
if (values == NULL) goto failed; if (values == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'JoinedStr' node")) { if (_Py_EnterRecursiveCall(" while traversing 'JoinedStr' node")) {
goto failed; goto failed;
} }
@ -9691,8 +9641,7 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
if (elts == NULL) goto failed; if (elts == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'List' node")) { if (_Py_EnterRecursiveCall(" while traversing 'List' node")) {
goto failed; goto failed;
} }
@ -9759,8 +9708,7 @@ obj2ast_expr(struct ast_state *state, PyObject* obj, expr_ty* out, PyArena*
if (elts == NULL) goto failed; if (elts == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'Tuple' node")) { if (_Py_EnterRecursiveCall(" while traversing 'Tuple' node")) {
goto failed; goto failed;
} }
@ -10246,8 +10194,7 @@ obj2ast_comprehension(struct ast_state *state, PyObject* obj, comprehension_ty*
if (ifs == NULL) goto failed; if (ifs == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'comprehension' node")) { if (_Py_EnterRecursiveCall(" while traversing 'comprehension' node")) {
goto failed; goto failed;
} }
@ -10436,8 +10383,7 @@ obj2ast_excepthandler(struct ast_state *state, PyObject* obj, excepthandler_ty*
if (body == NULL) goto failed; if (body == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'ExceptHandler' node")) { if (_Py_EnterRecursiveCall(" while traversing 'ExceptHandler' node")) {
goto failed; goto failed;
} }
@ -10498,8 +10444,7 @@ obj2ast_arguments(struct ast_state *state, PyObject* obj, arguments_ty* out,
if (posonlyargs == NULL) goto failed; if (posonlyargs == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
arg_ty val; arg_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'arguments' node")) { if (_Py_EnterRecursiveCall(" while traversing 'arguments' node")) {
goto failed; goto failed;
} }
@ -10535,8 +10480,7 @@ obj2ast_arguments(struct ast_state *state, PyObject* obj, arguments_ty* out,
if (args == NULL) goto failed; if (args == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
arg_ty val; arg_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'arguments' node")) { if (_Py_EnterRecursiveCall(" while traversing 'arguments' node")) {
goto failed; goto failed;
} }
@ -10589,8 +10533,7 @@ obj2ast_arguments(struct ast_state *state, PyObject* obj, arguments_ty* out,
if (kwonlyargs == NULL) goto failed; if (kwonlyargs == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
arg_ty val; arg_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'arguments' node")) { if (_Py_EnterRecursiveCall(" while traversing 'arguments' node")) {
goto failed; goto failed;
} }
@ -10626,8 +10569,7 @@ obj2ast_arguments(struct ast_state *state, PyObject* obj, arguments_ty* out,
if (kw_defaults == NULL) goto failed; if (kw_defaults == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'arguments' node")) { if (_Py_EnterRecursiveCall(" while traversing 'arguments' node")) {
goto failed; goto failed;
} }
@ -10680,8 +10622,7 @@ obj2ast_arguments(struct ast_state *state, PyObject* obj, arguments_ty* out,
if (defaults == NULL) goto failed; if (defaults == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'arguments' node")) { if (_Py_EnterRecursiveCall(" while traversing 'arguments' node")) {
goto failed; goto failed;
} }
@ -11200,8 +11141,7 @@ obj2ast_match_case(struct ast_state *state, PyObject* obj, match_case_ty* out,
if (body == NULL) goto failed; if (body == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
stmt_ty val; stmt_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'match_case' node")) { if (_Py_EnterRecursiveCall(" while traversing 'match_case' node")) {
goto failed; goto failed;
} }
@ -11397,8 +11337,7 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
if (patterns == NULL) goto failed; if (patterns == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
pattern_ty val; pattern_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'MatchSequence' node")) { if (_Py_EnterRecursiveCall(" while traversing 'MatchSequence' node")) {
goto failed; goto failed;
} }
@ -11449,8 +11388,7 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
if (keys == NULL) goto failed; if (keys == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
expr_ty val; expr_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'MatchMapping' node")) { if (_Py_EnterRecursiveCall(" while traversing 'MatchMapping' node")) {
goto failed; goto failed;
} }
@ -11486,8 +11424,7 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
if (patterns == NULL) goto failed; if (patterns == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
pattern_ty val; pattern_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'MatchMapping' node")) { if (_Py_EnterRecursiveCall(" while traversing 'MatchMapping' node")) {
goto failed; goto failed;
} }
@ -11573,8 +11510,7 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
if (patterns == NULL) goto failed; if (patterns == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
pattern_ty val; pattern_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'MatchClass' node")) { if (_Py_EnterRecursiveCall(" while traversing 'MatchClass' node")) {
goto failed; goto failed;
} }
@ -11610,8 +11546,7 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
if (kwd_attrs == NULL) goto failed; if (kwd_attrs == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
identifier val; identifier val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'MatchClass' node")) { if (_Py_EnterRecursiveCall(" while traversing 'MatchClass' node")) {
goto failed; goto failed;
} }
@ -11647,8 +11582,7 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
if (kwd_patterns == NULL) goto failed; if (kwd_patterns == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
pattern_ty val; pattern_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'MatchClass' node")) { if (_Py_EnterRecursiveCall(" while traversing 'MatchClass' node")) {
goto failed; goto failed;
} }
@ -11776,8 +11710,7 @@ obj2ast_pattern(struct ast_state *state, PyObject* obj, pattern_ty* out,
if (patterns == NULL) goto failed; if (patterns == NULL) goto failed;
for (i = 0; i < len; i++) { for (i = 0; i < len; i++) {
pattern_ty val; pattern_ty val;
PyObject *tmp2 = PyList_GET_ITEM(tmp, i); PyObject *tmp2 = Py_NewRef(PyList_GET_ITEM(tmp, i));
Py_INCREF(tmp2);
if (_Py_EnterRecursiveCall(" while traversing 'MatchOr' node")) { if (_Py_EnterRecursiveCall(" while traversing 'MatchOr' node")) {
goto failed; goto failed;
} }