1 #![feature(iterator_step_by)]
2 #![feature(inclusive_range_syntax)]
8 fn step_by(&self, _: u32) {}
11 #[warn(iterator_step_by_zero, range_zip_with_len)]
13 let _ = (0..1).step_by(0);
14 // No warning for non-zero step
15 let _ = (0..1).step_by(1);
17 let _ = (1..).step_by(0);
18 let _ = (1..=2).step_by(0);
23 // No error, not a range.
29 let _x = v1.iter().zip(0..v1.len());
30 let _y = v1.iter().zip(0..v2.len()); // No error
33 let _ = v1.iter().step_by(2/3);
37 fn no_panic_with_fake_range_types() {
42 let _ = Range { foo: 0 };