30 lines
627 B
Rust
30 lines
627 B
Rust
#![allow(dead_code, unused, for_loops_over_fallibles)]
|
|
#![warn(clippy::iter_next_loop)]
|
|
|
|
fn main() {
|
|
let x = [1, 2, 3, 4];
|
|
for _ in x.iter().next() {}
|
|
//~^ iter_next_loop
|
|
|
|
struct Unrelated(&'static [u8]);
|
|
impl Unrelated {
|
|
fn next(&self) -> std::slice::Iter<'_, u8> {
|
|
self.0.iter()
|
|
}
|
|
}
|
|
let u = Unrelated(&[0]);
|
|
for _v in u.next() {} // no error
|
|
}
|
|
|
|
fn issue14630() {
|
|
macro_rules! mac {
|
|
(next $e:expr) => {
|
|
$e.iter().next()
|
|
};
|
|
}
|
|
|
|
for _ in dbg!([1, 2].iter()).next() {}
|
|
//~^ iter_next_loop
|
|
|
|
for _ in mac!(next [1, 2]) {}
|
|
}
|