Serhiy Storchaka added the comment: This commit (and three other) causes compiler warnings:
./Modules/itertoolsmodule.c: In function ‘product_new’: ./Modules/itertoolsmodule.c:2025:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (repeat > PY_SSIZE_T_MAX/sizeof(Py_ssize_t) || ^ ./Modules/itertoolsmodule.c:2026:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] nargs > PY_SSIZE_T_MAX/(repeat * sizeof(Py_ssize_t))) { ^ ./Modules/itertoolsmodule.c: In function ‘combinations_new’: ./Modules/itertoolsmodule.c:2371:11: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (r > PY_SSIZE_T_MAX/sizeof(Py_ssize_t)) { ^ ./Modules/itertoolsmodule.c: In function ‘cwr_new’: ./Modules/itertoolsmodule.c:2716:11: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (r > PY_SSIZE_T_MAX/sizeof(Py_ssize_t)) { ^ ./Modules/itertoolsmodule.c: In function ‘permutations_new’: ./Modules/itertoolsmodule.c:3061:11: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (n > PY_SSIZE_T_MAX/sizeof(Py_ssize_t) || ^ ./Modules/itertoolsmodule.c:3062:11: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] r > PY_SSIZE_T_MAX/sizeof(Py_ssize_t)) { ^ May be use PyMem_New instead of PyMem_Malloc? ---------- keywords: +patch nosy: +serhiy.storchaka status: closed -> open Added file: http://bugs.python.org/file37974/itertools_overflows.patch _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue23366> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com