diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2015-03-01 08:03:46 (GMT) |
---|---|---|
committer | Serhiy Storchaka <storchaka@gmail.com> | 2015-03-01 08:03:46 (GMT) |
commit | 90295b450c7e4cca757f2c7f5536d21f06b1cef7 (patch) | |
tree | 8a98d780ffca67c99e09e262aa1d2c9f50afc67c /Modules | |
parent | 490055a1673b524da2ebe2312f072aba2a826036 (diff) | |
parent | c20830804df99535b5566e93a4e56afd16cf0e99 (diff) | |
download | cpython-90295b450c7e4cca757f2c7f5536d21f06b1cef7.zip cpython-90295b450c7e4cca757f2c7f5536d21f06b1cef7.tar.gz cpython-90295b450c7e4cca757f2c7f5536d21f06b1cef7.tar.bz2 |
Merge heads
Diffstat (limited to 'Modules')
-rw-r--r-- | Modules/_collectionsmodule.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/Modules/_collectionsmodule.c b/Modules/_collectionsmodule.c index 908cfd2..0ca9be1 100644 --- a/Modules/_collectionsmodule.c +++ b/Modules/_collectionsmodule.c @@ -1,6 +1,12 @@ #include "Python.h" #include "structmember.h" +#ifdef STDC_HEADERS +#include <stddef.h> +#else +#include <sys/types.h> /* For size_t */ +#endif + /* collections module implementation of a deque() datatype Written and maintained by Raymond D. Hettinger <python@rcn.com> Copyright (c) 2004-2015 Python Software Foundation. @@ -780,15 +786,15 @@ deque_item(dequeobject *deque, Py_ssize_t i) b = deque->rightblock; } else { i += deque->leftindex; - n = (Py_ssize_t)((unsigned) i / BLOCKLEN); - i = (Py_ssize_t)((unsigned) i % BLOCKLEN); + n = (Py_ssize_t)((size_t) i / BLOCKLEN); + i = (Py_ssize_t)((size_t) i % BLOCKLEN); if (index < (Py_SIZE(deque) >> 1)) { b = deque->leftblock; while (n--) b = b->rightlink; } else { n = (Py_ssize_t)( - ((unsigned)(deque->leftindex + Py_SIZE(deque) - 1)) + ((size_t)(deque->leftindex + Py_SIZE(deque) - 1)) / BLOCKLEN - n); b = deque->rightblock; while (n--) @@ -839,15 +845,15 @@ deque_ass_item(dequeobject *deque, Py_ssize_t i, PyObject *v) return deque_del_item(deque, i); i += deque->leftindex; - n = (Py_ssize_t)((unsigned) i / BLOCKLEN); - i = (Py_ssize_t)((unsigned) i % BLOCKLEN); + n = (Py_ssize_t)((size_t) i / BLOCKLEN); + i = (Py_ssize_t)((size_t) i % BLOCKLEN); if (index <= halflen) { b = deque->leftblock; while (n--) b = b->rightlink; } else { n = (Py_ssize_t)( - ((unsigned)(deque->leftindex + Py_SIZE(deque) - 1)) + ((size_t)(deque->leftindex + Py_SIZE(deque) - 1)) / BLOCKLEN - n); b = deque->rightblock; while (n--) |