2 results · Feed
-
Unscored —
Uint shift operations: incorrect overflow flags and truncated shift amounts
`Uint::overflowing_shl`/`overflowing_shr` returned false-negative overflow flags. `overflowing_shl` missed bits shifted above `BITS` but within the top limb (non-limb-aligned widths such as `U160`), and limbs wholly discarded by shifts >= 64; `overflowing_shr…
-
Medium —
ruint affected by unsoundness of safe `reciprocal_mg10`
The function `reciprocal_mg10` is marked as safe but can trigger undefined behavior (out-of-bounds access) because it relies on `debug_assert!` for safety checks instead of `assert!`. When compiled in release mode, the `debug_assert!` is optimized out, potent…