mirror of
https://codeberg.org/kiss-community/repo
synced 2024-08-23 06:26:17 +00:00
29 lines
1.1 KiB
Diff
29 lines
1.1 KiB
Diff
From a2062b2ec252bb8be9337a6d5b384c8cdda4463d 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.
|
|
---
|
|
vendor/typenum/build/main.rs | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git rustc-1.36.0-src/vendor/typenum/build/main.rs rustc-1.36.0-src/vendor/typenum/build/main.rs
|
|
index 9c9f237cd..153031a2f 100644
|
|
--- rustc-1.36.0-src/vendor/typenum/build/main.rs
|
|
+++ rustc-1.36.0-src/vendor/typenum/build/main.rs
|
|
@@ -77,7 +77,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)))
|
|
--
|
|
2.22.0
|