Skip to content

Commit 5e79321

Browse files
bpo-30074: Fix compile warnings of _PySlice_Unpack and convert missed (#1154)
PySlice_GetIndicesEx in _ctypes.c.
1 parent 50f948e commit 5e79321

File tree

12 files changed

+22
-23
lines changed

12 files changed

+22
-23
lines changed

Modules/_ctypes/_ctypes.c

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4434,9 +4434,7 @@ Array_subscript(PyObject *_self, PyObject *item)
44344434
PyObject *np;
44354435
Py_ssize_t start, stop, step, slicelen, cur, i;
44364436

4437-
if (PySlice_GetIndicesEx((PySliceObject *)item,
4438-
self->b_length, &start, &stop,
4439-
&step, &slicelen) < 0) {
4437+
if (_PySlice_Unpack(item, &start, &stop, &step) < 0) {
44404438
return NULL;
44414439
}
44424440

@@ -4447,6 +4445,7 @@ Array_subscript(PyObject *_self, PyObject *item)
44474445
assert(itemdict); /* proto is the item type of the array, a
44484446
ctypes type, so this cannot be NULL */
44494447

4448+
slicelen = _PySlice_AdjustIndices(self->b_length, &start, &stop, step);
44504449
if (itemdict->getfunc == _ctypes_get_fielddesc("c")->getfunc) {
44514450
char *ptr = (char *)self->b_ptr;
44524451
char *dest;
@@ -4613,7 +4612,7 @@ Array_ass_subscript(PyObject *_self, PyObject *item, PyObject *value)
46134612
else if (PySlice_Check(item)) {
46144613
Py_ssize_t start, stop, step, slicelen, otherlen, i, cur;
46154614

4616-
if (_PySlice_Unpack((PySliceObject *)item, &start, &stop, &step) < 0) {
4615+
if (_PySlice_Unpack(item, &start, &stop, &step) < 0) {
46174616
return -1;
46184617
}
46194618
slicelen = _PySlice_AdjustIndices(self->b_length, &start, &stop, step);

Modules/_elementtree.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1334,7 +1334,7 @@ element_subscr(PyObject* self_, PyObject* item)
13341334
if (!self->extra)
13351335
return PyList_New(0);
13361336

1337-
if (_PySlice_Unpack((PySliceObject *)item, &start, &stop, &step) < 0) {
1337+
if (_PySlice_Unpack(item, &start, &stop, &step) < 0) {
13381338
return NULL;
13391339
}
13401340
slicelen = _PySlice_AdjustIndices(self->extra->length, &start, &stop,
@@ -1393,7 +1393,7 @@ element_ass_subscr(PyObject* self_, PyObject* item, PyObject* value)
13931393
if (!self->extra)
13941394
element_new_extra(self, NULL);
13951395

1396-
if (_PySlice_Unpack((PySliceObject *)item, &start, &stop, &step) < 0) {
1396+
if (_PySlice_Unpack(item, &start, &stop, &step) < 0) {
13971397
return -1;
13981398
}
13991399
slicelen = _PySlice_AdjustIndices(self->extra->length, &start, &stop,

Modules/arraymodule.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1701,7 +1701,7 @@ array_subscr(arrayobject* self, PyObject* item)
17011701
arrayobject* ar;
17021702
int itemsize = self->ob_descr->itemsize;
17031703

1704-
if (_PySlice_Unpack((PySliceObject *)item, &start, &stop, &step) < 0) {
1704+
if (_PySlice_Unpack(item, &start, &stop, &step) < 0) {
17051705
return NULL;
17061706
}
17071707
slicelength = _PySlice_AdjustIndices(Py_SIZE(self), &start, &stop,
@@ -1773,7 +1773,7 @@ array_ass_subscr(arrayobject* self, PyObject* item, PyObject* value)
17731773
return (*self->ob_descr->setitem)(self, i, value);
17741774
}
17751775
else if (PySlice_Check(item)) {
1776-
if (_PySlice_Unpack((PySliceObject *)item, &start, &stop, &step) < 0) {
1776+
if (_PySlice_Unpack(item, &start, &stop, &step) < 0) {
17771777
return -1;
17781778
}
17791779
slicelength = _PySlice_AdjustIndices(Py_SIZE(self), &start, &stop,

Modules/mmapmodule.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -784,7 +784,7 @@ mmap_subscript(mmap_object *self, PyObject *item)
784784
else if (PySlice_Check(item)) {
785785
Py_ssize_t start, stop, step, slicelen;
786786

787-
if (_PySlice_Unpack((PySliceObject *)item, &start, &stop, &step) < 0) {
787+
if (_PySlice_Unpack(item, &start, &stop, &step) < 0) {
788788
return NULL;
789789
}
790790
slicelen = _PySlice_AdjustIndices(self->size, &start, &stop, step);
@@ -939,7 +939,7 @@ mmap_ass_subscript(mmap_object *self, PyObject *item, PyObject *value)
939939
else if (PySlice_Check(item)) {
940940
Py_ssize_t start, stop, step, slicelen;
941941

942-
if (_PySlice_Unpack((PySliceObject *)item, &start, &stop, &step) < 0) {
942+
if (_PySlice_Unpack(item, &start, &stop, &step) < 0) {
943943
return -1;
944944
}
945945
slicelen = _PySlice_AdjustIndices(self->size, &start, &stop, step);

Objects/bytearrayobject.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -435,7 +435,7 @@ bytearray_subscript(PyByteArrayObject *self, PyObject *index)
435435
}
436436
else if (PySlice_Check(index)) {
437437
Py_ssize_t start, stop, step, slicelength, cur, i;
438-
if (_PySlice_Unpack((PySliceObject *)index, &start, &stop, &step) < 0) {
438+
if (_PySlice_Unpack(index, &start, &stop, &step) < 0) {
439439
return NULL;
440440
}
441441
slicelength = _PySlice_AdjustIndices(PyByteArray_GET_SIZE(self),
@@ -619,7 +619,7 @@ bytearray_ass_subscript(PyByteArrayObject *self, PyObject *index, PyObject *valu
619619
}
620620
}
621621
else if (PySlice_Check(index)) {
622-
if (_PySlice_Unpack((PySliceObject *)index, &start, &stop, &step) < 0) {
622+
if (_PySlice_Unpack(index, &start, &stop, &step) < 0) {
623623
return -1;
624624
}
625625
slicelen = _PySlice_AdjustIndices(PyByteArray_GET_SIZE(self), &start,

Objects/listobject.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2562,7 +2562,7 @@ list_subscript(PyListObject* self, PyObject* item)
25622562
PyObject* it;
25632563
PyObject **src, **dest;
25642564

2565-
if (_PySlice_Unpack((PySliceObject *)item, &start, &stop, &step) < 0) {
2565+
if (_PySlice_Unpack(item, &start, &stop, &step) < 0) {
25662566
return NULL;
25672567
}
25682568
slicelength = _PySlice_AdjustIndices(Py_SIZE(self), &start, &stop,
@@ -2612,7 +2612,7 @@ list_ass_subscript(PyListObject* self, PyObject* item, PyObject* value)
26122612
else if (PySlice_Check(item)) {
26132613
Py_ssize_t start, stop, step, slicelength;
26142614

2615-
if (_PySlice_Unpack((PySliceObject *)item, &start, &stop, &step) < 0) {
2615+
if (_PySlice_Unpack(item, &start, &stop, &step) < 0) {
26162616
return -1;
26172617
}
26182618
slicelength = _PySlice_AdjustIndices(Py_SIZE(self), &start, &stop,

Objects/memoryobject.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -584,7 +584,7 @@ memory_subscript(PyMemoryViewObject *self, PyObject *key)
584584
else if (PySlice_Check(key)) {
585585
Py_ssize_t start, stop, step, slicelength;
586586

587-
if (_PySlice_Unpack((PySliceObject *)key, &start, &stop, &step) < 0) {
587+
if (_PySlice_Unpack(key, &start, &stop, &step) < 0) {
588588
return NULL;
589589
}
590590
slicelength = _PySlice_AdjustIndices(get_shape0(view), &start, &stop,
@@ -663,7 +663,7 @@ memory_ass_sub(PyMemoryViewObject *self, PyObject *key, PyObject *value)
663663
else if (PySlice_Check(key)) {
664664
Py_ssize_t stop, step;
665665

666-
if (_PySlice_Unpack((PySliceObject *)key, &start, &stop, &step) < 0) {
666+
if (_PySlice_Unpack(key, &start, &stop, &step) < 0) {
667667
return -1;
668668
}
669669
len = _PySlice_AdjustIndices(get_shape0(view), &start, &stop, step);

Objects/sliceobject.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -286,18 +286,18 @@ static PyMemberDef slice_members[] = {
286286
static PyObject*
287287
slice_indices(PySliceObject* self, PyObject* len)
288288
{
289-
Py_ssize_t ilen, start, stop, step, slicelength;
289+
Py_ssize_t ilen, start, stop, step;
290290

291291
ilen = PyNumber_AsSsize_t(len, PyExc_OverflowError);
292292

293293
if (ilen == -1 && PyErr_Occurred()) {
294294
return NULL;
295295
}
296296

297-
if (_PySlice_Unpack(self, &start, &stop, &step) < 0) {
297+
if (_PySlice_Unpack((PyObject *)self, &start, &stop, &step) < 0) {
298298
return NULL;
299299
}
300-
slicelength = _PySlice_AdjustIndices(ilen, &start, &stop, step);
300+
_PySlice_AdjustIndices(ilen, &start, &stop, step);
301301

302302
return Py_BuildValue("(nnn)", start, stop, step);
303303
}

Objects/stringobject.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1310,7 +1310,7 @@ string_subscript(PyStringObject* self, PyObject* item)
13101310
char* result_buf;
13111311
PyObject* result;
13121312

1313-
if (_PySlice_Unpack((PySliceObject *)item, &start, &stop, &step) < 0) {
1313+
if (_PySlice_Unpack(item, &start, &stop, &step) < 0) {
13141314
return NULL;
13151315
}
13161316
slicelength = _PySlice_AdjustIndices(PyString_GET_SIZE(self), &start,

Objects/structseq.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ structseq_subscript(PyStructSequence *self, PyObject *item)
114114
Py_ssize_t start, stop, step, slicelen, cur, i;
115115
PyObject *result;
116116

117-
if (_PySlice_Unpack((PySliceObject *)item, &start, &stop, &step) < 0) {
117+
if (_PySlice_Unpack(item, &start, &stop, &step) < 0) {
118118
return NULL;
119119
}
120120
slicelen = _PySlice_AdjustIndices(VISIBLE_SIZE(self), &start, &stop,

0 commit comments

Comments
 (0)