From: Mark Dickinson Date: Sun, 14 Feb 2010 12:16:43 +0000 (+0000) Subject: Silence some 'comparison between signed and unsigned' compiler warnings. X-Git-Tag: v2.7a4~190 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ac5685eb67dd890746892e3a1a44ca32dfa76142;p=python Silence some 'comparison between signed and unsigned' compiler warnings. --- diff --git a/Objects/listobject.c b/Objects/listobject.c index 0e2ce0ad8e..c55524d5b1 100644 --- a/Objects/listobject.c +++ b/Objects/listobject.c @@ -126,11 +126,11 @@ PyList_New(Py_ssize_t size) PyErr_BadInternalCall(); return NULL; } - nbytes = size * sizeof(PyObject *); /* Check for overflow without an actual overflow, * which can cause compiler to optimise out */ - if (size > PY_SIZE_MAX / sizeof(PyObject *)) + if ((size_t)size > PY_SIZE_MAX / sizeof(PyObject *)) return PyErr_NoMemory(); + nbytes = size * sizeof(PyObject *); if (numfree) { numfree--; op = free_list[numfree]; @@ -1432,7 +1432,7 @@ merge_getmem(MergeState *ms, Py_ssize_t need) * we don't care what's in the block. */ merge_freemem(ms); - if (need > PY_SSIZE_T_MAX / sizeof(PyObject*)) { + if ((size_t)need > PY_SSIZE_T_MAX / sizeof(PyObject*)) { PyErr_NoMemory(); return -1; } @@ -2636,7 +2636,8 @@ list_ass_subscript(PyListObject* self, PyObject* item, PyObject* value) step = -step; } - assert(slicelength <= PY_SIZE_MAX / sizeof(PyObject*)); + assert((size_t)slicelength <= + PY_SIZE_MAX / sizeof(PyObject*)); garbage = (PyObject**) PyMem_MALLOC(slicelength*sizeof(PyObject*)); @@ -2652,13 +2653,13 @@ list_ass_subscript(PyListObject* self, PyObject* item, PyObject* value) and then tail end of the list that was not covered by the slice */ for (cur = start, i = 0; - cur < stop; + cur < (size_t)stop; cur += step, i++) { Py_ssize_t lim = step - 1; garbage[i] = PyList_GET_ITEM(self, cur); - if (cur + step >= Py_SIZE(self)) { + if (cur + step >= (size_t)Py_SIZE(self)) { lim = Py_SIZE(self) - cur - 1; } @@ -2667,7 +2668,7 @@ list_ass_subscript(PyListObject* self, PyObject* item, PyObject* value) lim * sizeof(PyObject *)); } cur = start + slicelength*step; - if (cur < Py_SIZE(self)) { + if (cur < (size_t)Py_SIZE(self)) { memmove(self->ob_item + cur - slicelength, self->ob_item + cur, (Py_SIZE(self) - cur) *