@@ -1983,7 +1983,7 @@ dummy_func(
19831983 ERROR_IF (true);
19841984 }
19851985 PyObject * str_o = _PyUnicode_JoinArray (& _Py_STR (empty ), pieces_o , oparg );
1986- STACKREFS_TO_PYOBJECTS_CLEANUP (pieces_o );
1986+ STACKREFS_TO_PYOBJECTS_CLEANUP (pieces_o , oparg );
19871987 DECREF_INPUTS ();
19881988 ERROR_IF (str_o == NULL );
19891989 str = PyStackRef_FromPyObjectSteal (str_o );
@@ -2108,7 +2108,7 @@ dummy_func(
21082108 values_o , 2 ,
21092109 values_o + 1 , 2 ,
21102110 oparg );
2111- STACKREFS_TO_PYOBJECTS_CLEANUP (values_o );
2111+ STACKREFS_TO_PYOBJECTS_CLEANUP (values_o , oparg * 2 );
21122112 DECREF_INPUTS ();
21132113 ERROR_IF (map_o == NULL );
21142114 map = PyStackRef_FromPyObjectStealMortal (map_o );
@@ -3755,7 +3755,7 @@ dummy_func(
37553755 callable_o , args_o ,
37563756 total_args | PY_VECTORCALL_ARGUMENTS_OFFSET ,
37573757 NULL );
3758- STACKREFS_TO_PYOBJECTS_CLEANUP (args_o );
3758+ STACKREFS_TO_PYOBJECTS_CLEANUP (args_o , total_args );
37593759 if (opcode == INSTRUMENTED_CALL ) {
37603760 PyObject * arg = total_args == 0 ?
37613761 & _PyInstrumentation_MISSING : PyStackRef_AsPyObjectBorrow (arguments [0 ]);
@@ -3910,7 +3910,7 @@ dummy_func(
39103910 callable_o , args_o ,
39113911 total_args | PY_VECTORCALL_ARGUMENTS_OFFSET ,
39123912 NULL );
3913- STACKREFS_TO_PYOBJECTS_CLEANUP (args_o );
3913+ STACKREFS_TO_PYOBJECTS_CLEANUP (args_o , total_args );
39143914 assert ((res_o != NULL ) ^ (_PyErr_Occurred (tstate ) != NULL ));
39153915 DECREF_INPUTS ();
39163916 ERROR_IF (res_o == NULL );
@@ -4193,7 +4193,7 @@ dummy_func(
41934193 ERROR_IF (true);
41944194 }
41954195 PyObject * res_o = tp -> tp_vectorcall ((PyObject * )tp , args_o , total_args , NULL );
4196- STACKREFS_TO_PYOBJECTS_CLEANUP (args_o );
4196+ STACKREFS_TO_PYOBJECTS_CLEANUP (args_o , total_args );
41974197 DECREF_INPUTS ();
41984198 ERROR_IF (res_o == NULL );
41994199 res = PyStackRef_FromPyObjectSteal (res_o );
@@ -4264,7 +4264,7 @@ dummy_func(
42644264 PyCFunction_GET_SELF (callable_o ),
42654265 args_o ,
42664266 total_args );
4267- STACKREFS_TO_PYOBJECTS_CLEANUP (args_o );
4267+ STACKREFS_TO_PYOBJECTS_CLEANUP (args_o , total_args );
42684268 assert ((res_o != NULL ) ^ (_PyErr_Occurred (tstate ) != NULL ));
42694269 DECREF_INPUTS ();
42704270 ERROR_IF (res_o == NULL );
@@ -4300,7 +4300,7 @@ dummy_func(
43004300 ERROR_IF (true);
43014301 }
43024302 PyObject * res_o = cfunc (PyCFunction_GET_SELF (callable_o ), args_o , total_args , NULL );
4303- STACKREFS_TO_PYOBJECTS_CLEANUP (args_o );
4303+ STACKREFS_TO_PYOBJECTS_CLEANUP (args_o , total_args );
43044304 assert ((res_o != NULL ) ^ (_PyErr_Occurred (tstate ) != NULL ));
43054305 DECREF_INPUTS ();
43064306 ERROR_IF (res_o == NULL );
@@ -4480,7 +4480,7 @@ dummy_func(
44804480 PyCFunctionFastWithKeywords cfunc =
44814481 _PyCFunctionFastWithKeywords_CAST (meth -> ml_meth );
44824482 PyObject * res_o = cfunc (self , (args_o + 1 ), nargs , NULL );
4483- STACKREFS_TO_PYOBJECTS_CLEANUP (args_o );
4483+ STACKREFS_TO_PYOBJECTS_CLEANUP (args_o , total_args );
44844484 assert ((res_o != NULL ) ^ (_PyErr_Occurred (tstate ) != NULL ));
44854485 DECREF_INPUTS ();
44864486 ERROR_IF (res_o == NULL );
@@ -4559,7 +4559,7 @@ dummy_func(
45594559 }
45604560 PyCFunctionFast cfunc = _PyCFunctionFast_CAST (meth -> ml_meth );
45614561 PyObject * res_o = cfunc (self , (args_o + 1 ), nargs );
4562- STACKREFS_TO_PYOBJECTS_CLEANUP (args_o );
4562+ STACKREFS_TO_PYOBJECTS_CLEANUP (args_o , total_args );
45634563 assert ((res_o != NULL ) ^ (_PyErr_Occurred (tstate ) != NULL ));
45644564 DECREF_INPUTS ();
45654565 ERROR_IF (res_o == NULL );
@@ -4658,7 +4658,7 @@ dummy_func(
46584658 callable_o , args_o ,
46594659 positional_args | PY_VECTORCALL_ARGUMENTS_OFFSET ,
46604660 kwnames_o );
4661- STACKREFS_TO_PYOBJECTS_CLEANUP (args_o );
4661+ STACKREFS_TO_PYOBJECTS_CLEANUP (args_o , total_args );
46624662 if (opcode == INSTRUMENTED_CALL_KW ) {
46634663 PyObject * arg = total_args == 0 ?
46644664 & _PyInstrumentation_MISSING : PyStackRef_AsPyObjectBorrow (arguments [0 ]);
@@ -4815,7 +4815,7 @@ dummy_func(
48154815 positional_args | PY_VECTORCALL_ARGUMENTS_OFFSET ,
48164816 kwnames_o );
48174817 PyStackRef_CLOSE (kwnames );
4818- STACKREFS_TO_PYOBJECTS_CLEANUP (args_o );
4818+ STACKREFS_TO_PYOBJECTS_CLEANUP (args_o , total_args );
48194819 assert ((res_o != NULL ) ^ (_PyErr_Occurred (tstate ) != NULL ));
48204820 DECREF_INPUTS ();
48214821 ERROR_IF (res_o == NULL );
0 commit comments