From 964ba2a6e731f79d99248d1f0e67eac17e69e368 Mon Sep 17 00:00:00 2001 From: Robin Kruppe Date: Sun, 15 Oct 2017 20:10:42 +0200 Subject: [PATCH] Fix bug in rustc_apfloat --- src/librustc_apfloat/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/librustc_apfloat/lib.rs b/src/librustc_apfloat/lib.rs index 9e348f622232..2048127222bb 100644 --- a/src/librustc_apfloat/lib.rs +++ b/src/librustc_apfloat/lib.rs @@ -378,7 +378,7 @@ fn copy_sign(self, rhs: Self) -> Self { fn from_bits(input: u128) -> Self; fn from_i128_r(input: i128, round: Round) -> StatusAnd { if input < 0 { - Self::from_u128_r(-input as u128, -round).map(|r| -r) + Self::from_u128_r(input.wrapping_neg() as u128, -round).map(|r| -r) } else { Self::from_u128_r(input as u128, round) }