]> git.proxmox.com Git - rustc.git/blame - src/tools/clippy/tests/ui/modulo_arithmetic_integral.rs
Update upstream source from tag 'upstream/1.52.1+dfsg1'
[rustc.git] / src / tools / clippy / tests / ui / modulo_arithmetic_integral.rs
CommitLineData
f20569fa
XL
1#![warn(clippy::modulo_arithmetic)]
2#![allow(
3 unused,
4 clippy::shadow_reuse,
5 clippy::shadow_unrelated,
6 clippy::no_effect,
7 clippy::unnecessary_operation,
8 clippy::modulo_one
9)]
10
11fn main() {
12 // Lint on signed integral numbers
13 let a = -1;
14 let mut b = 2;
15 a % b;
16 b % a;
17 b %= a;
18
19 let a_i8: i8 = 1;
20 let mut b_i8: i8 = 2;
21 a_i8 % b_i8;
22 b_i8 %= a_i8;
23
24 let a_i16: i16 = 1;
25 let mut b_i16: i16 = 2;
26 a_i16 % b_i16;
27 b_i16 %= a_i16;
28
29 let a_i32: i32 = 1;
30 let mut b_i32: i32 = 2;
31 a_i32 % b_i32;
32 b_i32 %= a_i32;
33
34 let a_i64: i64 = 1;
35 let mut b_i64: i64 = 2;
36 a_i64 % b_i64;
37 b_i64 %= a_i64;
38
39 let a_i128: i128 = 1;
40 let mut b_i128: i128 = 2;
41 a_i128 % b_i128;
42 b_i128 %= a_i128;
43
44 let a_isize: isize = 1;
45 let mut b_isize: isize = 2;
46 a_isize % b_isize;
47 b_isize %= a_isize;
48
49 let a = 1;
50 let mut b = 2;
51 a % b;
52 b %= a;
53
54 // No lint on unsigned integral value
55 let a_u8: u8 = 17;
56 let b_u8: u8 = 3;
57 a_u8 % b_u8;
58 let mut a_u8: u8 = 1;
59 a_u8 %= 2;
60
61 let a_u16: u16 = 17;
62 let b_u16: u16 = 3;
63 a_u16 % b_u16;
64 let mut a_u16: u16 = 1;
65 a_u16 %= 2;
66
67 let a_u32: u32 = 17;
68 let b_u32: u32 = 3;
69 a_u32 % b_u32;
70 let mut a_u32: u32 = 1;
71 a_u32 %= 2;
72
73 let a_u64: u64 = 17;
74 let b_u64: u64 = 3;
75 a_u64 % b_u64;
76 let mut a_u64: u64 = 1;
77 a_u64 %= 2;
78
79 let a_u128: u128 = 17;
80 let b_u128: u128 = 3;
81 a_u128 % b_u128;
82 let mut a_u128: u128 = 1;
83 a_u128 %= 2;
84
85 let a_usize: usize = 17;
86 let b_usize: usize = 3;
87 a_usize % b_usize;
88 let mut a_usize: usize = 1;
89 a_usize %= 2;
90}