diff --git a/cmake/darwin-ld-pypy.sym b/cmake/darwin-ld-pypy.sym index 749db1b8..5940cfb2 100644 --- a/cmake/darwin-ld-pypy.sym +++ b/cmake/darwin-ld-pypy.sym @@ -43,6 +43,7 @@ -U _PyPyCFunction_Check -U _PyPyCFunction_GetFunction -U _PyPyCFunction_Type +-U _PyPyCFunction_NewEx -U _PyPyCMethod_New -U _PyPyCallIter_New -U _PyPyCallable_Check @@ -898,6 +899,7 @@ -U __PyPyObject_GetDictPtr -U __PyPyObject_New -U __PyPyObject_NewVar +-U __PyPyObject_Vectorcall -U __PyPyPyGC_AddMemoryPressure -U __PyPyPy_Free -U __PyPyPy_Malloc diff --git a/src/common.cpp b/src/common.cpp index bceed6ad..1d3d4bfd 100644 --- a/src/common.cpp +++ b/src/common.cpp @@ -272,11 +272,11 @@ PyObject *obj_vectorcall(PyObject *base, PyObject *const *args, size_t nargsf, if (method_call) { PyObject *self = PyObject_GetAttr(args[0], /* name = */ base); if (self) { - res = _PyObject_Vectorcall(self, args + 1, nargsf - 1, kwnames); + res = _PyObject_Vectorcall(self, (PyObject **) args + 1, nargsf - 1, kwnames); Py_DECREF(self); } } else { - res = _PyObject_Vectorcall(base, args, nargsf, kwnames); + res = _PyObject_Vectorcall(base, (PyObject **) args, nargsf, kwnames); } #else res = (method_call ? PyObject_VectorcallMethod