]>
git.proxmox.com Git - rustc.git/blob - src/test/ui/consts/const-int-wrapping-rpass.rs
3 const ADD_A
: u32 = 200u32.wrapping_add(55);
4 const ADD_B
: u32 = 200u32.wrapping_add(u32::MAX
);
6 const SUB_A
: u32 = 100u32.wrapping_sub(100);
7 const SUB_B
: u32 = 100u32.wrapping_sub(u32::MAX
);
9 const MUL_A
: u8 = 10u8.wrapping_mul(12);
10 const MUL_B
: u8 = 25u8.wrapping_mul(12);
12 const SHL_A
: u32 = 1u32.wrapping_shl(7);
13 const SHL_B
: u32 = 1u32.wrapping_shl(128);
15 const SHR_A
: u32 = 128u32.wrapping_shr(7);
16 const SHR_B
: u32 = 128u32.wrapping_shr(128);
18 const NEG_A
: u32 = 5u32.wrapping_neg();
19 const NEG_B
: u32 = 1234567890u32.wrapping_neg();
21 const ABS_POS
: i32 = 10i32.wrapping_abs();
22 const ABS_NEG
: i32 = (-10i32).wrapping_abs();
23 const ABS_MIN
: i32 = i32::MIN
.wrapping_abs();
26 assert_eq
!(ADD_A
, 255);
27 assert_eq
!(ADD_B
, 199);
30 assert_eq
!(SUB_B
, 101);
32 assert_eq
!(MUL_A
, 120);
33 assert_eq
!(MUL_B
, 44);
35 assert_eq
!(SHL_A
, 128);
39 assert_eq
!(SHR_B
, 128);
41 assert_eq
!(NEG_A
, 4294967291);
42 assert_eq
!(NEG_B
, 3060399406);
44 assert_eq
!(ABS_POS
, 10);
45 assert_eq
!(ABS_NEG
, 10);
46 assert_eq
!(ABS_MIN
, i32::MIN
);