On Wed, Aug 26, 2026 at 4:56 PM Miguel Ojeda <[email protected]> wrote: > > Starting with Rust 1.100.0 (expected 2026-11-12), Clippy warns: > > warning: the loop variable `i` is only used to index `self.decimals` > --> drivers/gpu/drm/drm_panic_qr.rs:410:18 > | > 410 | for i in 0..len { > | ^^^^^^ > | > note: for this index operation > --> drivers/gpu/drm/drm_panic_qr.rs:411:13 > | > 411 | self.decimals[i] = (chunk % 10) as u8; > | ^^^^^^^^^^^^^^^^ > = help: for further information visit > https://rust-lang.github.io/rust-clippy/main/index.html#needless_range_loop > = note: `-W clippy::needless-range-loop` implied by `-W clippy::all` > = help: to override `-W clippy::all` add > `#[allow(clippy::needless_range_loop)]` > help: consider using an iterator > | > 410 - for i in 0..len { > 410 + for <item> in self.decimals.iter_mut().take(len) { > | > > The lint did not trigger here before because it could not handle arrays > behind a field access such as `self.decimals` -- Clippy was improved to > catch those cases [1][2]. > > Thus clean the warning by iterating over a slice rather than using > `take()` so that an out-of-range `len` still triggers the same bounds > check as the indexed loop. > > Cc: [email protected] # Needed in 6.18.y and later. > Link: https://github.com/rust-lang/rust-clippy/issues/16631 [1] > Link: https://github.com/rust-lang/rust-clippy/pull/16634 [2] > Assisted-by: LLM > Signed-off-by: Miguel Ojeda <[email protected]> > --- > One may want to keep the loop in a shape similar to e.g. the one above, > though.
Jocelyn: I will likely send another rust-fixes PR during this cycle, so I can put this one there if you agree with it. Thanks! Cheers, Miguel
