Skip to content

Commit c0fb74b

Browse files
Add widening tests for cast_sign_loss lint
1 parent 7002a9e commit c0fb74b

File tree

1 file changed

+20
-0
lines changed

1 file changed

+20
-0
lines changed

tests/ui/cast.rs

+20
Original file line numberDiff line numberDiff line change
@@ -42,34 +42,54 @@ fn main() {
4242
i32::max_value() as u32;
4343
i64::max_value() as u64;
4444
i128::max_value() as u128;
45+
4546
(-1i8).abs() as u8;
4647
(-1i16).abs() as u16;
4748
(-1i32).abs() as u32;
4849
(-1i64).abs() as u64;
4950
(-1isize).abs() as usize;
51+
5052
(-1i8).checked_abs().unwrap() as u8;
5153
(-1i16).checked_abs().unwrap() as u16;
5254
(-1i32).checked_abs().unwrap() as u32;
5355
(-1i64).checked_abs().unwrap() as u64;
5456
(-1isize).checked_abs().unwrap() as usize;
57+
5558
(-1i8).rem_euclid(1i8) as u8;
59+
(-1i8).rem_euclid(1i8) as u16;
5660
(-1i16).rem_euclid(1i16) as u16;
61+
(-1i16).rem_euclid(1i16) as u32;
5762
(-1i32).rem_euclid(1i32) as u32;
63+
(-1i32).rem_euclid(1i32) as u64;
5864
(-1i64).rem_euclid(1i64) as u64;
65+
(-1i64).rem_euclid(1i64) as u128;
5966
(-1isize).rem_euclid(1isize) as usize;
6067
(1i8).rem_euclid(-1i8) as u8;
68+
(1i8).rem_euclid(-1i8) as u16;
6169
(1i16).rem_euclid(-1i16) as u16;
70+
(1i16).rem_euclid(-1i16) as u32;
6271
(1i32).rem_euclid(-1i32) as u32;
72+
(1i32).rem_euclid(-1i32) as u64;
6373
(1i64).rem_euclid(-1i64) as u64;
74+
(1i64).rem_euclid(-1i64) as u128;
6475
(1isize).rem_euclid(-1isize) as usize;
76+
6577
(-1i8).checked_rem_euclid(1i8).unwrap() as u8;
78+
(-1i8).checked_rem_euclid(1i8).unwrap() as u16;
6679
(-1i16).checked_rem_euclid(1i16).unwrap() as u16;
80+
(-1i16).checked_rem_euclid(1i16).unwrap() as u32;
6781
(-1i32).checked_rem_euclid(1i32).unwrap() as u32;
82+
(-1i32).checked_rem_euclid(1i32).unwrap() as u64;
6883
(-1i64).checked_rem_euclid(1i64).unwrap() as u64;
84+
(-1i64).checked_rem_euclid(1i64).unwrap() as u128;
6985
(-1isize).checked_rem_euclid(1isize).unwrap() as usize;
7086
(1i8).checked_rem_euclid(-1i8).unwrap() as u8;
87+
(1i8).checked_rem_euclid(-1i8).unwrap() as u16;
7188
(1i16).checked_rem_euclid(-1i16).unwrap() as u16;
89+
(1i16).checked_rem_euclid(-1i16).unwrap() as u32;
7290
(1i32).checked_rem_euclid(-1i32).unwrap() as u32;
91+
(1i32).checked_rem_euclid(-1i32).unwrap() as u64;
7392
(1i64).checked_rem_euclid(-1i64).unwrap() as u64;
93+
(1i64).checked_rem_euclid(-1i64).unwrap() as u128;
7494
(1isize).checked_rem_euclid(-1isize).unwrap() as usize;
7595
}

0 commit comments

Comments
 (0)