diff options
Diffstat (limited to 'src/tools/clippy/tests/ui/range_plus_minus_one.rs')
-rw-r--r-- | src/tools/clippy/tests/ui/range_plus_minus_one.rs | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/tools/clippy/tests/ui/range_plus_minus_one.rs b/src/tools/clippy/tests/ui/range_plus_minus_one.rs new file mode 100644 index 000000000..a8ddd9b5f --- /dev/null +++ b/src/tools/clippy/tests/ui/range_plus_minus_one.rs @@ -0,0 +1,42 @@ +// run-rustfix + +#![allow(unused_parens)] +#![allow(clippy::iter_with_drain)] +fn f() -> usize { + 42 +} + +#[warn(clippy::range_plus_one)] +#[warn(clippy::range_minus_one)] +fn main() { + for _ in 0..2 {} + for _ in 0..=2 {} + + for _ in 0..3 + 1 {} + for _ in 0..=3 + 1 {} + + for _ in 0..1 + 5 {} + for _ in 0..=1 + 5 {} + + for _ in 1..1 + 1 {} + for _ in 1..=1 + 1 {} + + for _ in 0..13 + 13 {} + for _ in 0..=13 - 7 {} + + for _ in 0..(1 + f()) {} + for _ in 0..=(1 + f()) {} + + let _ = ..11 - 1; + let _ = ..=11 - 1; + let _ = ..=(11 - 1); + let _ = (1..11 + 1); + let _ = (f() + 1)..(f() + 1); + + const ONE: usize = 1; + // integer consts are linted, too + for _ in 1..ONE + ONE {} + + let mut vec: Vec<()> = std::vec::Vec::new(); + vec.drain(..); +} |