bpo-36974: separate vectorcall functions for each calling convention (GH-13781)
diff --git a/Objects/call.c b/Objects/call.c
index 8e0d271..861ab87 100644
--- a/Objects/call.c
+++ b/Objects/call.c
@@ -216,7 +216,7 @@
PyObject *result = func(callable, args,
nargs | PY_VECTORCALL_ARGUMENTS_OFFSET, kwnames);
_PyStack_UnpackDict_Free(args, nargs, kwnames);
- return result;
+ return _Py_CheckFunctionResult(callable, result, NULL);
}
@@ -625,26 +625,6 @@
return result;
}
-
-PyObject *
-_PyCFunction_Vectorcall(PyObject *func,
- PyObject *const *args, size_t nargsf,
- PyObject *kwnames)
-{
- PyObject *result;
-
- assert(func != NULL);
- assert(PyCFunction_Check(func));
- Py_ssize_t nargs = PyVectorcall_NARGS(nargsf);
-
- result = _PyMethodDef_RawFastCallKeywords(((PyCFunctionObject*)func)->m_ml,
- PyCFunction_GET_SELF(func),
- args, nargs, kwnames);
- result = _Py_CheckFunctionResult(func, result, NULL);
- return result;
-}
-
-
static PyObject *
cfunction_call_varargs(PyObject *func, PyObject *args, PyObject *kwargs)
{