rust-itertools / itertools

Extra iterator adaptors, iterator methods, free functions, and macros.
https://docs.rs/itertools/
Apache License 2.0
2.76k stars 309 forks source link

test failure on 32-bit. #995

Open plugwash opened 1 month ago

plugwash commented 1 month ago

Debian CI revealed that the test combinations_inexact_size_hints fails on 32-bit architectures with an integer overflow

https://ci.debian.net/packages/r/rust-itertools/testing/i386/52667389/#S9

605s ---- combinations_inexact_size_hints stdout ---- 605s thread 'combinations_inexact_size_hints' panicked at /usr/src/rustc-1.80.1/library/core/src/iter/traits/accum.rs:149:1: 605s attempt to multiply with overflow

I patched this in Debian by converting the values to u64 before doing the calculation and converting them back at the end.

https://salsa.debian.org/rust-team/debcargo-conf/-/blob/1e0bed11cc4ef40067840f9a9525eb94a0f146d9/src/itertools/debian/patches/fix-integer-overflow-in-test.patch