Skip to content

Commit b647d70

Browse files
authored
bpo-32707: Fix warnings in hamt.c (#5430)
1 parent aa218d1 commit b647d70

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

Python/hamt.c

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -620,7 +620,8 @@ hamt_node_bitmap_clone_without(PyHamtNode_Bitmap *o, uint32_t bit)
620620
new->b_array[i] = o->b_array[i];
621621
}
622622

623-
for (i = val_idx + 1; i < Py_SIZE(o); i++) {
623+
assert(Py_SIZE(o) >= 0 && Py_SIZE(o) <= 32);
624+
for (i = val_idx + 1; i < (uint32_t)Py_SIZE(o); i++) {
624625
Py_XINCREF(o->b_array[i]);
625626
new->b_array[i - 2] = o->b_array[i];
626627
}
@@ -920,7 +921,7 @@ hamt_node_bitmap_assoc(PyHamtNode_Bitmap *self,
920921

921922
uint32_t key_idx = 2 * idx;
922923
uint32_t val_idx = key_idx + 1;
923-
Py_ssize_t i;
924+
uint32_t i;
924925

925926
*added_leaf = 1;
926927

@@ -947,7 +948,8 @@ hamt_node_bitmap_assoc(PyHamtNode_Bitmap *self,
947948

948949
/* Copy all keys/values that will be after the new key/value
949950
we are adding. */
950-
for (i = key_idx; i < Py_SIZE(self); i++) {
951+
assert(Py_SIZE(self) >= 0 && Py_SIZE(self) <= 32);
952+
for (i = key_idx; i < (uint32_t)Py_SIZE(self); i++) {
951953
Py_XINCREF(self->b_array[i]);
952954
new_node->b_array[i + 2] = self->b_array[i];
953955
}

0 commit comments

Comments
 (0)