mirror of
https://github.com/python/cpython.git
synced 2025-12-04 00:30:19 +00:00
bpo-33012: Fix invalid function cast warnings with gcc 8 for METH_NOARGS. (GH-6030)
METH_NOARGS functions need only a single argument but they are cast into a PyCFunction, which takes two arguments. This triggers an invalid function cast warning in gcc8 due to the argument mismatch. Fix this by adding a dummy unused argument.
This commit is contained in:
parent
9f3535c9cd
commit
55edd0c185
56 changed files with 406 additions and 406 deletions
|
|
@ -512,7 +512,7 @@ deque_inplace_concat(dequeobject *deque, PyObject *other)
|
|||
}
|
||||
|
||||
static PyObject *
|
||||
deque_copy(PyObject *deque)
|
||||
deque_copy(PyObject *deque, PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
dequeobject *old_deque = (dequeobject *)deque;
|
||||
if (Py_TYPE(deque) == &deque_type) {
|
||||
|
|
@ -563,7 +563,7 @@ deque_concat(dequeobject *deque, PyObject *other)
|
|||
return NULL;
|
||||
}
|
||||
|
||||
new_deque = deque_copy((PyObject *)deque);
|
||||
new_deque = deque_copy((PyObject *)deque, NULL);
|
||||
if (new_deque == NULL)
|
||||
return NULL;
|
||||
result = deque_extend((dequeobject *)new_deque, other);
|
||||
|
|
@ -659,7 +659,7 @@ deque_clear(dequeobject *deque)
|
|||
}
|
||||
|
||||
static PyObject *
|
||||
deque_clearmethod(dequeobject *deque)
|
||||
deque_clearmethod(dequeobject *deque, PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
deque_clear(deque);
|
||||
Py_RETURN_NONE;
|
||||
|
|
@ -754,7 +754,7 @@ deque_repeat(dequeobject *deque, Py_ssize_t n)
|
|||
dequeobject *new_deque;
|
||||
PyObject *rv;
|
||||
|
||||
new_deque = (dequeobject *)deque_copy((PyObject *) deque);
|
||||
new_deque = (dequeobject *)deque_copy((PyObject *) deque, NULL);
|
||||
if (new_deque == NULL)
|
||||
return NULL;
|
||||
rv = deque_inplace_repeat(new_deque, n);
|
||||
|
|
@ -1576,7 +1576,7 @@ static PyNumberMethods deque_as_number = {
|
|||
};
|
||||
|
||||
static PyObject *deque_iter(dequeobject *deque);
|
||||
static PyObject *deque_reviter(dequeobject *deque);
|
||||
static PyObject *deque_reviter(dequeobject *deque, PyObject *Py_UNUSED(ignored));
|
||||
PyDoc_STRVAR(reversed_doc,
|
||||
"D.__reversed__() -- return a reverse iterator over the deque");
|
||||
|
||||
|
|
@ -1587,9 +1587,9 @@ static PyMethodDef deque_methods[] = {
|
|||
METH_O, appendleft_doc},
|
||||
{"clear", (PyCFunction)deque_clearmethod,
|
||||
METH_NOARGS, clear_doc},
|
||||
{"__copy__", (PyCFunction)deque_copy,
|
||||
{"__copy__", deque_copy,
|
||||
METH_NOARGS, copy_doc},
|
||||
{"copy", (PyCFunction)deque_copy,
|
||||
{"copy", deque_copy,
|
||||
METH_NOARGS, copy_doc},
|
||||
{"count", (PyCFunction)deque_count,
|
||||
METH_O, count_doc},
|
||||
|
|
@ -1774,7 +1774,7 @@ dequeiter_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
|
|||
}
|
||||
|
||||
static PyObject *
|
||||
dequeiter_len(dequeiterobject *it)
|
||||
dequeiter_len(dequeiterobject *it, PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
return PyLong_FromSsize_t(it->counter);
|
||||
}
|
||||
|
|
@ -1782,7 +1782,7 @@ dequeiter_len(dequeiterobject *it)
|
|||
PyDoc_STRVAR(length_hint_doc, "Private method returning an estimate of len(list(it)).");
|
||||
|
||||
static PyObject *
|
||||
dequeiter_reduce(dequeiterobject *it)
|
||||
dequeiter_reduce(dequeiterobject *it, PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
return Py_BuildValue("O(On)", Py_TYPE(it), it->deque, Py_SIZE(it->deque) - it->counter);
|
||||
}
|
||||
|
|
@ -1841,7 +1841,7 @@ static PyTypeObject dequeiter_type = {
|
|||
static PyTypeObject dequereviter_type;
|
||||
|
||||
static PyObject *
|
||||
deque_reviter(dequeobject *deque)
|
||||
deque_reviter(dequeobject *deque, PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
dequeiterobject *it;
|
||||
|
||||
|
|
@ -1896,7 +1896,7 @@ dequereviter_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
|
|||
return NULL;
|
||||
assert(type == &dequereviter_type);
|
||||
|
||||
it = (dequeiterobject*)deque_reviter((dequeobject *)deque);
|
||||
it = (dequeiterobject*)deque_reviter((dequeobject *)deque, NULL);
|
||||
if (!it)
|
||||
return NULL;
|
||||
/* consume items from the queue */
|
||||
|
|
@ -2001,7 +2001,7 @@ defdict_missing(defdictobject *dd, PyObject *key)
|
|||
PyDoc_STRVAR(defdict_copy_doc, "D.copy() -> a shallow copy of D.");
|
||||
|
||||
static PyObject *
|
||||
defdict_copy(defdictobject *dd)
|
||||
defdict_copy(defdictobject *dd, PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
/* This calls the object's class. That only works for subclasses
|
||||
whose class constructor has the same signature. Subclasses that
|
||||
|
|
@ -2015,7 +2015,7 @@ defdict_copy(defdictobject *dd)
|
|||
}
|
||||
|
||||
static PyObject *
|
||||
defdict_reduce(defdictobject *dd)
|
||||
defdict_reduce(defdictobject *dd, PyObject *Py_UNUSED(ignored))
|
||||
{
|
||||
/* __reduce__ must return a 5-tuple as follows:
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue