2 #![allow(unused_assignments, unused_mut, clippy::assign_op_pattern)]
3 #![warn(clippy::implicit_saturating_sub)]
6 // Tests for unsigned integers
10 let mut u_8: u8 = end_8 - start_8;
13 u_8 = u_8.saturating_sub(1);
18 u_8 = u_8.saturating_sub(1);
25 let start_16: u16 = 35;
27 let mut u_16: u16 = end_16 - start_16;
30 u_16 = u_16.saturating_sub(1);
32 let mut end_32: u32 = 7010;
33 let mut start_32: u32 = 7000;
35 let mut u_32: u32 = end_32 - start_32;
38 u_32 = u_32.saturating_sub(1);
51 let mut end_64: u64 = 75001;
52 let mut start_64: u64 = 75000;
54 let mut u_64: u64 = end_64 - start_64;
57 u_64 = u_64.saturating_sub(1);
60 u_64 = u_64.saturating_sub(1);
63 u_64 = u_64.saturating_sub(1);
76 let end_usize: usize = 8054;
77 let start_usize: usize = 8050;
79 let mut u_usize: usize = end_usize - start_usize;
82 u_usize = u_usize.saturating_sub(1);
84 // Tests for signed integers
87 let starti_8: i8 = 50;
89 let mut i_8: i8 = endi_8 - starti_8;
92 i_8 = i_8.saturating_sub(1);
95 i_8 = i_8.saturating_sub(1);
98 i_8 = i_8.saturating_sub(1);
101 i_8 = i_8.saturating_sub(1);
103 let endi_16: i16 = 45;
104 let starti_16: i16 = 44;
106 let mut i_16: i16 = endi_16 - starti_16;
109 i_16 = i_16.saturating_sub(1);
112 i_16 = i_16.saturating_sub(1);
115 i_16 = i_16.saturating_sub(1);
118 i_16 = i_16.saturating_sub(1);
120 let endi_32: i32 = 45;
121 let starti_32: i32 = 44;
123 let mut i_32: i32 = endi_32 - starti_32;
126 i_32 = i_32.saturating_sub(1);
129 i_32 = i_32.saturating_sub(1);
132 i_32 = i_32.saturating_sub(1);
135 i_32 = i_32.saturating_sub(1);
137 let endi_64: i64 = 45;
138 let starti_64: i64 = 44;
140 let mut i_64: i64 = endi_64 - starti_64;
143 i_64 = i_64.saturating_sub(1);
146 i_64 = i_64.saturating_sub(1);
149 i_64 = i_64.saturating_sub(1);
166 println!("side effect");