Sophie

Sophie

distrib > Mageia > 7 > i586 > media > core-updates-src > by-pkgid > 92e9f71d55800a3afd6a83a56f6102df > files > 38

firefox-68.2.0-1.mga7.src.rpm

From 0d5196feadafa77c727f517d747ffcf3fd0e8ba9 Mon Sep 17 00:00:00 2001
From: Michael Hudson-Doyle <michael.hudson@canonical.com>
Date: Wed, 13 Mar 2019 15:55:30 +1300
Subject: [PATCH] round result of (highest as f64).log(2.0)

Even though (1024f64).log(2.0) has an exact, representable, value, with rustc 1.32 on i386 it comes out as +9.999999999999999985 with optimization enabled. And the rustc doesn't like having two defintions for U1024 etc.
---
 build/main.rs | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/build/main.rs b/build/main.rs
index 16b0ffe2f..b7939f993 100644
--- a/third_party/rust/typenum/build/main.rs
+++ b/third_party/rust/typenum/build/main.rs
@@ -81,7 +81,7 @@ pub fn no_std() {}
 fn main() {
     let highest: u64 = 1024;
 
-    let first2: u32 = (highest as f64).log(2.0) as u32 + 1;
+    let first2: u32 = (highest as f64).log(2.0).round() as u32 + 1;
     let first10: u32 = (highest as f64).log(10.0) as u32 + 1;
     let uints = (0..(highest + 1))
         .chain((first2..64).map(|i| 2u64.pow(i)))