mirror of
https://github.com/python/cpython.git
synced 2025-07-28 13:44:43 +00:00
C++ compiler cleanup: bunch-o-casts, plus use of unsigned loop index var in a couple places
This commit is contained in:
parent
3fca463627
commit
429433b30b
6 changed files with 29 additions and 28 deletions
|
@ -688,7 +688,7 @@ complex_subtype_from_string(PyTypeObject *type, PyObject *v)
|
||||||
}
|
}
|
||||||
#ifdef Py_USING_UNICODE
|
#ifdef Py_USING_UNICODE
|
||||||
else if (PyUnicode_Check(v)) {
|
else if (PyUnicode_Check(v)) {
|
||||||
if (PyUnicode_GET_SIZE(v) >= sizeof(s_buffer)) {
|
if (PyUnicode_GET_SIZE(v) >= (Py_ssize_t)sizeof(s_buffer)) {
|
||||||
PyErr_SetString(PyExc_ValueError,
|
PyErr_SetString(PyExc_ValueError,
|
||||||
"complex() literal too large to convert");
|
"complex() literal too large to convert");
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
|
@ -97,7 +97,7 @@ PyFloat_FromString(PyObject *v, char **pend)
|
||||||
}
|
}
|
||||||
#ifdef Py_USING_UNICODE
|
#ifdef Py_USING_UNICODE
|
||||||
else if (PyUnicode_Check(v)) {
|
else if (PyUnicode_Check(v)) {
|
||||||
if (PyUnicode_GET_SIZE(v) >= sizeof(s_buffer)) {
|
if (PyUnicode_GET_SIZE(v) >= (Py_ssize_t)sizeof(s_buffer)) {
|
||||||
PyErr_SetString(PyExc_ValueError,
|
PyErr_SetString(PyExc_ValueError,
|
||||||
"Unicode float() literal too long to convert");
|
"Unicode float() literal too long to convert");
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
|
@ -255,18 +255,18 @@ PyInt_AsUnsignedLongMask(register PyObject *op)
|
||||||
if (op == NULL || (nb = op->ob_type->tp_as_number) == NULL ||
|
if (op == NULL || (nb = op->ob_type->tp_as_number) == NULL ||
|
||||||
nb->nb_int == NULL) {
|
nb->nb_int == NULL) {
|
||||||
PyErr_SetString(PyExc_TypeError, "an integer is required");
|
PyErr_SetString(PyExc_TypeError, "an integer is required");
|
||||||
return -1;
|
return (unsigned long)-1;
|
||||||
}
|
}
|
||||||
|
|
||||||
io = (PyIntObject*) (*nb->nb_int) (op);
|
io = (PyIntObject*) (*nb->nb_int) (op);
|
||||||
if (io == NULL)
|
if (io == NULL)
|
||||||
return -1;
|
return (unsigned long)-1;
|
||||||
if (!PyInt_Check(io)) {
|
if (!PyInt_Check(io)) {
|
||||||
if (PyLong_Check(io)) {
|
if (PyLong_Check(io)) {
|
||||||
val = PyLong_AsUnsignedLongMask((PyObject *)io);
|
val = PyLong_AsUnsignedLongMask((PyObject *)io);
|
||||||
Py_DECREF(io);
|
Py_DECREF(io);
|
||||||
if (PyErr_Occurred())
|
if (PyErr_Occurred())
|
||||||
return -1;
|
return (unsigned long)-1;
|
||||||
return val;
|
return val;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -274,7 +274,7 @@ PyInt_AsUnsignedLongMask(register PyObject *op)
|
||||||
Py_DECREF(io);
|
Py_DECREF(io);
|
||||||
PyErr_SetString(PyExc_TypeError,
|
PyErr_SetString(PyExc_TypeError,
|
||||||
"nb_int should return int object");
|
"nb_int should return int object");
|
||||||
return -1;
|
return (unsigned long)-1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -300,18 +300,18 @@ PyInt_AsUnsignedLongLongMask(register PyObject *op)
|
||||||
if (op == NULL || (nb = op->ob_type->tp_as_number) == NULL ||
|
if (op == NULL || (nb = op->ob_type->tp_as_number) == NULL ||
|
||||||
nb->nb_int == NULL) {
|
nb->nb_int == NULL) {
|
||||||
PyErr_SetString(PyExc_TypeError, "an integer is required");
|
PyErr_SetString(PyExc_TypeError, "an integer is required");
|
||||||
return -1;
|
return (unsigned PY_LONG_LONG)-1;
|
||||||
}
|
}
|
||||||
|
|
||||||
io = (PyIntObject*) (*nb->nb_int) (op);
|
io = (PyIntObject*) (*nb->nb_int) (op);
|
||||||
if (io == NULL)
|
if (io == NULL)
|
||||||
return -1;
|
return (unsigned PY_LONG_LONG)-1;
|
||||||
if (!PyInt_Check(io)) {
|
if (!PyInt_Check(io)) {
|
||||||
if (PyLong_Check(io)) {
|
if (PyLong_Check(io)) {
|
||||||
val = PyLong_AsUnsignedLongLongMask((PyObject *)io);
|
val = PyLong_AsUnsignedLongLongMask((PyObject *)io);
|
||||||
Py_DECREF(io);
|
Py_DECREF(io);
|
||||||
if (PyErr_Occurred())
|
if (PyErr_Occurred())
|
||||||
return -1;
|
return (unsigned PY_LONG_LONG)-1;
|
||||||
return val;
|
return val;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -319,7 +319,7 @@ PyInt_AsUnsignedLongLongMask(register PyObject *op)
|
||||||
Py_DECREF(io);
|
Py_DECREF(io);
|
||||||
PyErr_SetString(PyExc_TypeError,
|
PyErr_SetString(PyExc_TypeError,
|
||||||
"nb_int should return int object");
|
"nb_int should return int object");
|
||||||
return -1;
|
return (unsigned PY_LONG_LONG)-1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1152,6 +1152,7 @@ PyInt_Fini(void)
|
||||||
PyIntObject *p;
|
PyIntObject *p;
|
||||||
PyIntBlock *list, *next;
|
PyIntBlock *list, *next;
|
||||||
int i;
|
int i;
|
||||||
|
unsigned int ctr;
|
||||||
int bc, bf; /* block count, number of freed blocks */
|
int bc, bf; /* block count, number of freed blocks */
|
||||||
int irem, isum; /* remaining unfreed ints per block, total */
|
int irem, isum; /* remaining unfreed ints per block, total */
|
||||||
|
|
||||||
|
@ -1174,9 +1175,9 @@ PyInt_Fini(void)
|
||||||
while (list != NULL) {
|
while (list != NULL) {
|
||||||
bc++;
|
bc++;
|
||||||
irem = 0;
|
irem = 0;
|
||||||
for (i = 0, p = &list->objects[0];
|
for (ctr = 0, p = &list->objects[0];
|
||||||
i < N_INTOBJECTS;
|
ctr < N_INTOBJECTS;
|
||||||
i++, p++) {
|
ctr++, p++) {
|
||||||
if (PyInt_CheckExact(p) && p->ob_refcnt != 0)
|
if (PyInt_CheckExact(p) && p->ob_refcnt != 0)
|
||||||
irem++;
|
irem++;
|
||||||
}
|
}
|
||||||
|
@ -1184,9 +1185,9 @@ PyInt_Fini(void)
|
||||||
if (irem) {
|
if (irem) {
|
||||||
list->next = block_list;
|
list->next = block_list;
|
||||||
block_list = list;
|
block_list = list;
|
||||||
for (i = 0, p = &list->objects[0];
|
for (ctr = 0, p = &list->objects[0];
|
||||||
i < N_INTOBJECTS;
|
ctr < N_INTOBJECTS;
|
||||||
i++, p++) {
|
ctr++, p++) {
|
||||||
if (!PyInt_CheckExact(p) ||
|
if (!PyInt_CheckExact(p) ||
|
||||||
p->ob_refcnt == 0) {
|
p->ob_refcnt == 0) {
|
||||||
p->ob_type = (struct _typeobject *)
|
p->ob_type = (struct _typeobject *)
|
||||||
|
@ -1227,9 +1228,9 @@ PyInt_Fini(void)
|
||||||
if (Py_VerboseFlag > 1) {
|
if (Py_VerboseFlag > 1) {
|
||||||
list = block_list;
|
list = block_list;
|
||||||
while (list != NULL) {
|
while (list != NULL) {
|
||||||
for (i = 0, p = &list->objects[0];
|
for (ctr = 0, p = &list->objects[0];
|
||||||
i < N_INTOBJECTS;
|
ctr < N_INTOBJECTS;
|
||||||
i++, p++) {
|
ctr++, p++) {
|
||||||
if (PyInt_CheckExact(p) && p->ob_refcnt != 0)
|
if (PyInt_CheckExact(p) && p->ob_refcnt != 0)
|
||||||
/* XXX(twouters) cast refcount to
|
/* XXX(twouters) cast refcount to
|
||||||
long until %zd is universally
|
long until %zd is universally
|
||||||
|
|
|
@ -419,7 +419,7 @@ _PyLong_NumBits(PyObject *vv)
|
||||||
digit msd = v->ob_digit[ndigits - 1];
|
digit msd = v->ob_digit[ndigits - 1];
|
||||||
|
|
||||||
result = (ndigits - 1) * SHIFT;
|
result = (ndigits - 1) * SHIFT;
|
||||||
if (result / SHIFT != ndigits - 1)
|
if (result / SHIFT != (size_t)(ndigits - 1))
|
||||||
goto Overflow;
|
goto Overflow;
|
||||||
do {
|
do {
|
||||||
++result;
|
++result;
|
||||||
|
@ -953,7 +953,7 @@ PyLong_AsUnsignedLongLong(PyObject *vv)
|
||||||
|
|
||||||
if (vv == NULL || !PyLong_Check(vv)) {
|
if (vv == NULL || !PyLong_Check(vv)) {
|
||||||
PyErr_BadInternalCall();
|
PyErr_BadInternalCall();
|
||||||
return -1;
|
return (unsigned PY_LONG_LONG)-1;
|
||||||
}
|
}
|
||||||
|
|
||||||
res = _PyLong_AsByteArray(
|
res = _PyLong_AsByteArray(
|
||||||
|
|
|
@ -746,7 +746,7 @@ PyString_AsStringAndSize(register PyObject *obj,
|
||||||
*s = PyString_AS_STRING(obj);
|
*s = PyString_AS_STRING(obj);
|
||||||
if (len != NULL)
|
if (len != NULL)
|
||||||
*len = PyString_GET_SIZE(obj);
|
*len = PyString_GET_SIZE(obj);
|
||||||
else if (strlen(*s) != PyString_GET_SIZE(obj)) {
|
else if (strlen(*s) != (size_t)PyString_GET_SIZE(obj)) {
|
||||||
PyErr_SetString(PyExc_TypeError,
|
PyErr_SetString(PyExc_TypeError,
|
||||||
"expected string without null bytes");
|
"expected string without null bytes");
|
||||||
return -1;
|
return -1;
|
||||||
|
|
|
@ -1118,12 +1118,12 @@ set_mro_error(PyObject *to_merge, int *remain)
|
||||||
off = PyOS_snprintf(buf, sizeof(buf), "Cannot create a \
|
off = PyOS_snprintf(buf, sizeof(buf), "Cannot create a \
|
||||||
consistent method resolution\norder (MRO) for bases");
|
consistent method resolution\norder (MRO) for bases");
|
||||||
i = 0;
|
i = 0;
|
||||||
while (PyDict_Next(set, &i, &k, &v) && off < sizeof(buf)) {
|
while (PyDict_Next(set, &i, &k, &v) && (size_t)off < sizeof(buf)) {
|
||||||
PyObject *name = class_name(k);
|
PyObject *name = class_name(k);
|
||||||
off += PyOS_snprintf(buf + off, sizeof(buf) - off, " %s",
|
off += PyOS_snprintf(buf + off, sizeof(buf) - off, " %s",
|
||||||
name ? PyString_AS_STRING(name) : "?");
|
name ? PyString_AS_STRING(name) : "?");
|
||||||
Py_XDECREF(name);
|
Py_XDECREF(name);
|
||||||
if (--n && off+1 < sizeof(buf)) {
|
if (--n && (size_t)(off+1) < sizeof(buf)) {
|
||||||
buf[off++] = ',';
|
buf[off++] = ',';
|
||||||
buf[off] = '\0';
|
buf[off] = '\0';
|
||||||
}
|
}
|
||||||
|
@ -5186,16 +5186,16 @@ slotptr(PyTypeObject *type, int ioffset)
|
||||||
|
|
||||||
/* Note: this depends on the order of the members of PyHeapTypeObject! */
|
/* Note: this depends on the order of the members of PyHeapTypeObject! */
|
||||||
assert(offset >= 0);
|
assert(offset >= 0);
|
||||||
assert(offset < offsetof(PyHeapTypeObject, as_buffer));
|
assert((size_t)offset < offsetof(PyHeapTypeObject, as_buffer));
|
||||||
if (offset >= offsetof(PyHeapTypeObject, as_sequence)) {
|
if ((size_t)offset >= offsetof(PyHeapTypeObject, as_sequence)) {
|
||||||
ptr = (char *)type->tp_as_sequence;
|
ptr = (char *)type->tp_as_sequence;
|
||||||
offset -= offsetof(PyHeapTypeObject, as_sequence);
|
offset -= offsetof(PyHeapTypeObject, as_sequence);
|
||||||
}
|
}
|
||||||
else if (offset >= offsetof(PyHeapTypeObject, as_mapping)) {
|
else if ((size_t)offset >= offsetof(PyHeapTypeObject, as_mapping)) {
|
||||||
ptr = (char *)type->tp_as_mapping;
|
ptr = (char *)type->tp_as_mapping;
|
||||||
offset -= offsetof(PyHeapTypeObject, as_mapping);
|
offset -= offsetof(PyHeapTypeObject, as_mapping);
|
||||||
}
|
}
|
||||||
else if (offset >= offsetof(PyHeapTypeObject, as_number)) {
|
else if ((size_t)offset >= offsetof(PyHeapTypeObject, as_number)) {
|
||||||
ptr = (char *)type->tp_as_number;
|
ptr = (char *)type->tp_as_number;
|
||||||
offset -= offsetof(PyHeapTypeObject, as_number);
|
offset -= offsetof(PyHeapTypeObject, as_number);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue