X-Git-Url: https://git.distorted.org.uk/~mdw/pyke/blobdiff_plain/138563a571351c06c09fba7c6ed3d1f79fdd974d..85d110a41cee7dd8c91e10017068fc39dc99eeb0:/mapping.c diff --git a/mapping.c b/mapping.c index 7080ca5..363a2f0 100644 --- a/mapping.c +++ b/mapping.c @@ -54,7 +54,7 @@ static PyObject *itemiter_pynext(PyObject *me) return (rc); } -static PyTypeObject itemiter_pytype_skel = { +static const PyTypeObject itemiter_pytype_skel = { PyObject_HEAD_INIT(0) 0, /* Header */ "ItemIter", /* @tp_name@ */ sizeof(iter_pyobj), /* @tp_basicsize@ */ @@ -112,7 +112,7 @@ static PyObject *valiter_pynext(PyObject *me) return (rc); } -static PyTypeObject valiter_pytype_skel = { +static const PyTypeObject valiter_pytype_skel = { PyObject_HEAD_INIT(0) 0, /* Header */ "ValueIter", /* @tp_name@ */ sizeof(iter_pyobj), /* @tp_basicsize@ */ @@ -306,14 +306,13 @@ end: } static const char *const def_kwlist[] = { "key", "default", 0 }; +#define DEF_KWLIST ((/*unconst*/ char **)def_kwlist) PyObject *gmapmeth_get(PyObject *me, PyObject *arg, PyObject *kw) { PyObject *k, *def = Py_None, *v; - if (!PyArg_ParseTupleAndKeywords(arg, kw, "O|O:get", - (/*unconst*/ char **)def_kwlist, - &k, &def)) + if (!PyArg_ParseTupleAndKeywords(arg, kw, "O|O:get", DEF_KWLIST, &k, &def)) return (0); if ((v = PyObject_GetItem(me, k)) != 0) return (v); PyErr_Clear(); @@ -324,8 +323,7 @@ PyObject *gmapmeth_setdefault(PyObject *me, PyObject *arg, PyObject *kw) { PyObject *k, *def = Py_None, *v; - if (!PyArg_ParseTupleAndKeywords(arg, kw, "O|O:setdefault", - (/*unconst*/ char **)def_kwlist, + if (!PyArg_ParseTupleAndKeywords(arg, kw, "O|O:setdefault", DEF_KWLIST, &k, &def)) return (0); if ((v = PyObject_GetItem(me, k)) != 0) return (v); @@ -338,9 +336,7 @@ PyObject *gmapmeth_pop(PyObject *me, PyObject *arg, PyObject *kw) { PyObject *k, *def = 0, *v; - if (!PyArg_ParseTupleAndKeywords(arg, kw, "O|O:pop", - (/*unconst*/ char **)def_kwlist, - &k, &def)) + if (!PyArg_ParseTupleAndKeywords(arg, kw, "O|O:pop", DEF_KWLIST, &k, &def)) return (0); if ((v = PyObject_GetItem(me, k)) != 0) { PyObject_DelItem(me, k);