diff --git a/include/pybind11/pybind11.h b/include/pybind11/pybind11.h index 9749147f..df43217a 100644 --- a/include/pybind11/pybind11.h +++ b/include/pybind11/pybind11.h @@ -975,9 +975,9 @@ public: class_ &def_property(const char *name, const cpp_function &fget, const cpp_function &fset, const char *doc = nullptr) { object doc_obj = doc ? pybind11::str(doc) : (object) const_cast(fget).attr("__doc__"); object property( - PyObject_CallFunction((PyObject *)&PyProperty_Type, - const_cast("OOOO"), fget.ptr() ? fget.ptr() : Py_None, - fset.ptr() ? fset.ptr() : Py_None, Py_None, doc_obj.ptr()), false); + PyObject_CallFunctionObjArgs((PyObject *) &PyProperty_Type, + fget.ptr() ? fget.ptr() : Py_None, + fset.ptr() ? fset.ptr() : Py_None, Py_None, doc_obj.ptr(), nullptr), false); attr(name) = property; return *this; } @@ -985,9 +985,9 @@ public: class_ &def_property_static(const char *name, const cpp_function &fget, const cpp_function &fset, const char *doc = nullptr) { object doc_obj = doc ? pybind11::str(doc) : (object) const_cast(fget).attr("__doc__"); object property( - PyObject_CallFunction((PyObject *)&PyProperty_Type, - const_cast("OOOs"), fget.ptr() ? fget.ptr() : Py_None, - fset.ptr() ? fset.ptr() : Py_None, Py_None, doc_obj.ptr()), false); + PyObject_CallFunctionObjArgs((PyObject *) &PyProperty_Type, + fget.ptr() ? fget.ptr() : Py_None, + fset.ptr() ? fset.ptr() : Py_None, Py_None, doc_obj.ptr(), nullptr), false); metaclass().attr(name) = property; return *this; }