From 4f37df872042414db0b4251aa787b7a2c69567d3 Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Mon, 6 Mar 2017 17:27:42 -0800 Subject: [PATCH] beta test --- rust-gh40256.patch | 42 ++++++++++++++++++++++++++++++++++++++++++ rust.spec | 2 ++ 2 files changed, 44 insertions(+) create mode 100644 rust-gh40256.patch diff --git a/rust-gh40256.patch b/rust-gh40256.patch new file mode 100644 index 0000000..2f0eeb6 --- /dev/null +++ b/rust-gh40256.patch @@ -0,0 +1,42 @@ +From e8d90fbe7467575a798551ef031840b7b990f585 Mon Sep 17 00:00:00 2001 +From: Simonas Kazlauskas +Date: Sat, 4 Mar 2017 12:33:40 +0200 +Subject: [PATCH] Beta backport of #40254 + +--- + src/libcompiler_builtins/lib.rs | 10 +++++++--- + 1 file changed, 7 insertions(+), 3 deletions(-) + +diff --git a/src/libcompiler_builtins/lib.rs b/src/libcompiler_builtins/lib.rs +index 662d742..69ec99b 100644 +--- a/src/libcompiler_builtins/lib.rs ++++ b/src/libcompiler_builtins/lib.rs +@@ -468,14 +468,15 @@ pub mod reimpls { + } + + trait AbsExt: Sized { +- fn uabs(self) -> u128_ { +- self.iabs() as u128_ +- } ++ fn uabs(self) -> u128_; + fn iabs(self) -> i128_; + } + + #[cfg(stage0)] + impl AbsExt for i128_ { ++ fn uabs(self) -> u128_ { ++ self.iabs() as u128_ ++ } + fn iabs(self) -> i128_ { + let s = self >> 63; + ((self ^ s).wrapping_sub(s)) +@@ -484,6 +485,9 @@ pub mod reimpls { + + #[cfg(not(stage0))] + impl AbsExt for i128_ { ++ fn uabs(self) -> u128_ { ++ self.iabs() as u128_ ++ } + fn iabs(self) -> i128_ { + let s = self >> 127; + ((self ^ s).wrapping_sub(s)) diff --git a/rust.spec b/rust.spec index dd872ce..3c49462 100644 --- a/rust.spec +++ b/rust.spec @@ -58,6 +58,7 @@ ExclusiveArch: %{rust_arches} Source0: https://static.rust-lang.org/dist/%{rustc_package}.tar.gz Patch1: rust-1.16.0-configure-no-override.patch +Patch2: rust-gh40256.patch # Get the Rust triple for any arch. %{lua: function rust_triple(arch) @@ -273,6 +274,7 @@ sed -i.ffi -e '$a #[link(name = "ffi")] extern {}' \ %endif %patch1 -p1 -b .no-override +%patch2 -p1 %build