From b0bcb23eb497bbfbf20ab4b0b36b6fe37fbd7368 Mon Sep 17 00:00:00 2001 From: bjorn3 Date: Sat, 16 Nov 2019 16:44:26 +0100 Subject: Fix signed cast to 128bit integer --- example/std_example.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'example') diff --git a/example/std_example.rs b/example/std_example.rs index 50f794733e3..d6734e74498 100644 --- a/example/std_example.rs +++ b/example/std_example.rs @@ -53,7 +53,12 @@ fn main() { assert_eq!(0b100010000000000000000000000000000u128 >> 10, 0b10001000000000000000000u128); assert_eq!(0xFEDCBA987654321123456789ABCDEFu128 >> 64, 0xFEDCBA98765432u128); assert_eq!(0xFEDCBA987654321123456789ABCDEFu128 as i128 >> 64, 0xFEDCBA98765432i128); - assert_eq!(353985398u128 * 932490u128, 330087843781020u128); + + let tmp = 353985398u128; + assert_eq!(tmp * 932490u128, 330087843781020u128); + + let tmp = -0x1234_5678_9ABC_DEF0i64; + assert_eq!(tmp as i128, -0x1234_5678_9ABC_DEF0i128); // Check that all u/i128 <-> float casts work correctly. let houndred_u128 = 100u128; -- cgit 1.4.1-3-g733a5