]> granicus.if.org Git - python/commitdiff
Silence some 'comparison between signed and unsigned' compiler warnings.
authorMark Dickinson <dickinsm@gmail.com>
Sun, 14 Feb 2010 12:16:43 +0000 (12:16 +0000)
committerMark Dickinson <dickinsm@gmail.com>
Sun, 14 Feb 2010 12:16:43 +0000 (12:16 +0000)
Objects/listobject.c

index 0e2ce0ad8ee255cc68d9c76ffc1b5fb7718011e7..c55524d5b1f98cf199a0feb540d35c7c398e1ae4 100644 (file)
@@ -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) *