[packages/rust] adjusted and reenabled x32 patch
atler
atler at pld-linux.org
Fri Oct 30 16:08:46 CET 2020
commit d794f84ff8fc9f67069b3b8d23850fd9e2e791a8
Author: Jan Palus <atler at pld-linux.org>
Date: Fri Oct 30 14:04:14 2020 +0100
adjusted and reenabled x32 patch
rust-x32.patch | 99 ++++++++++++++++++++++++++--------------------------------
rust.spec | 2 +-
2 files changed, 45 insertions(+), 56 deletions(-)
---
diff --git a/rust.spec b/rust.spec
index 093075d..b166412 100644
--- a/rust.spec
+++ b/rust.spec
@@ -277,7 +277,7 @@ Dopełnianie parametrów polecenia cargo w powłoce Zsh.
%prep
%setup -q -n %{rustc_package}
# irrelevant when not building rustc for x32
-#patch0 -p1
+%patch0 -p1
%if %{with bootstrap}
%ifarch %{x8664} x32
diff --git a/rust-x32.patch b/rust-x32.patch
index 2ce58cd..ef50d32 100644
--- a/rust-x32.patch
+++ b/rust-x32.patch
@@ -1,6 +1,6 @@
---- rustc-1.44.1-src/src/librustc_errors/lib.rs.orig 2020-06-17 22:17:05.000000000 +0200
-+++ rustc-1.44.1-src/src/librustc_errors/lib.rs 2020-09-19 16:51:37.200375178 +0200
-@@ -42,7 +42,7 @@
+--- rustc-1.47.0-src.orig/src/librustc_errors/lib.rs 2020-10-07 09:53:22.000000000 +0200
++++ rustc-1.47.0-src/src/librustc_errors/lib.rs 2020-10-30 13:52:39.921952637 +0100
+@@ -45,7 +45,7 @@
// `PResult` is used a lot. Make sure it doesn't unintentionally get bigger.
// (See also the comment on `DiagnosticBuilderInner`.)
@@ -9,20 +9,20 @@
rustc_data_structures::static_assert_size!(PResult<'_, bool>, 16);
/// Indicates the confidence in the correctness of a suggestion.
---- rustc-1.44.1-src/src/librustc_ast/ast.rs.orig 2020-06-17 22:17:05.000000000 +0200
-+++ rustc-1.44.1-src/src/librustc_ast/ast.rs 2020-09-19 20:00:01.696079898 +0200
-@@ -1011,7 +1011,7 @@
+--- rustc-1.47.0-src.orig/src/librustc_ast/ast.rs 2020-10-07 09:53:22.000000000 +0200
++++ rustc-1.47.0-src/src/librustc_ast/ast.rs 2020-10-30 13:53:59.025035237 +0100
+@@ -1056,7 +1056,7 @@
}
// `Expr` is used a lot. Make sure it doesn't unintentionally get bigger.
-#[cfg(target_arch = "x86_64")]
+#[cfg(all(target_arch = "x86_64", target_pointer_size = "64"))]
- rustc_data_structures::static_assert_size!(Expr, 96);
+ rustc_data_structures::static_assert_size!(Expr, 104);
impl Expr {
---- rustc-1.44.1-src/src/librustc_ast/token.rs.orig 2020-06-17 22:17:05.000000000 +0200
-+++ rustc-1.44.1-src/src/librustc_ast/token.rs 2020-09-19 20:00:34.444494028 +0200
-@@ -757,7 +757,7 @@
+--- rustc-1.47.0-src.orig/src/librustc_ast/token.rs 2020-10-07 09:53:22.000000000 +0200
++++ rustc-1.47.0-src/src/librustc_ast/token.rs 2020-10-30 13:52:39.925285960 +0100
+@@ -710,7 +710,7 @@
}
// `Nonterminal` is used a lot. Make sure it doesn't unintentionally get bigger.
@@ -30,10 +30,10 @@
+#[cfg(all(target_arch = "x86_64", target_pointer_size = "64"))]
rustc_data_structures::static_assert_size!(Nonterminal, 40);
- impl Nonterminal {
---- rustc-1.44.1-src/src/librustc_ast/tokenstream.rs.orig 2020-06-17 22:17:05.000000000 +0200
-+++ rustc-1.44.1-src/src/librustc_ast/tokenstream.rs 2020-09-19 20:01:08.269632279 +0200
-@@ -147,7 +147,7 @@
+ #[derive(Debug, Copy, Clone, PartialEq, Encodable, Decodable)]
+--- rustc-1.47.0-src.orig/src/librustc_ast/tokenstream.rs 2020-10-07 09:53:22.000000000 +0200
++++ rustc-1.47.0-src/src/librustc_ast/tokenstream.rs 2020-10-30 13:52:39.925285960 +0100
+@@ -130,7 +130,7 @@
pub type TreeAndJoint = (TokenTree, IsJoint);
// `TokenStream` is used a lot. Make sure it doesn't unintentionally get bigger.
@@ -41,10 +41,10 @@
+#[cfg(all(target_arch = "x86_64", target_pointer_size = "64"))]
rustc_data_structures::static_assert_size!(TokenStream, 8);
- #[derive(Clone, Copy, Debug, PartialEq, RustcEncodable, RustcDecodable)]
---- rustc-1.44.1-src/src/librustc_middle/mir/mod.rs.orig 2020-06-17 22:17:05.000000000 +0200
-+++ rustc-1.44.1-src/src/librustc_middle/mir/mod.rs 2020-09-19 21:14:39.635242732 +0200
-@@ -1557,7 +1557,7 @@
+ #[derive(Clone, Copy, Debug, PartialEq, Encodable, Decodable)]
+--- rustc-1.47.0-src.orig/src/librustc_middle/mir/mod.rs 2020-10-07 09:53:22.000000000 +0200
++++ rustc-1.47.0-src/src/librustc_middle/mir/mod.rs 2020-10-30 13:52:39.925285960 +0100
+@@ -1353,7 +1353,7 @@
}
// `Statement` is used a lot. Make sure it doesn't unintentionally get bigger.
@@ -53,8 +53,8 @@
static_assert_size!(Statement<'_>, 32);
impl Statement<'_> {
-@@ -1810,7 +1810,7 @@
- impl<'tcx> Copy for PlaceElem<'tcx> {}
+@@ -1615,7 +1615,7 @@
+ pub type PlaceElem<'tcx> = ProjectionElem<Local, Ty<'tcx>>;
// At least on 64 bit systems, `PlaceElem` should not be larger than two pointers.
-#[cfg(target_arch = "x86_64")]
@@ -62,9 +62,9 @@
static_assert_size!(PlaceElem<'_>, 16);
/// Alias for projections as they appear in `UserTypeProjection`, where we
---- rustc-1.44.1-src/src/librustc_middle/mir/tcx.rs.orig 2020-06-17 22:17:05.000000000 +0200
-+++ rustc-1.44.1-src/src/librustc_middle/mir/tcx.rs 2020-09-19 21:15:10.600202818 +0200
-@@ -18,7 +18,7 @@
+--- rustc-1.47.0-src.orig/src/librustc_middle/mir/tcx.rs 2020-10-07 09:53:22.000000000 +0200
++++ rustc-1.47.0-src/src/librustc_middle/mir/tcx.rs 2020-10-30 13:52:39.925285960 +0100
+@@ -17,7 +17,7 @@
}
// At least on 64 bit systems, `PlaceTy` should not be larger than two or three pointers.
@@ -73,9 +73,9 @@
static_assert_size!(PlaceTy<'_>, 16);
impl<'tcx> PlaceTy<'tcx> {
---- rustc-1.44.1-src/src/librustc_middle/traits/mod.rs.orig 2020-06-17 22:17:05.000000000 +0200
-+++ rustc-1.44.1-src/src/librustc_middle/traits/mod.rs 2020-09-19 21:15:40.648448077 +0200
-@@ -276,7 +276,7 @@
+--- rustc-1.47.0-src.orig/src/librustc_middle/traits/mod.rs 2020-10-07 09:53:22.000000000 +0200
++++ rustc-1.47.0-src/src/librustc_middle/traits/mod.rs 2020-10-30 13:52:39.925285960 +0100
+@@ -339,7 +339,7 @@
}
// `ObligationCauseCode` is used a lot. Make sure it doesn't unintentionally get bigger.
@@ -83,10 +83,10 @@
+#[cfg(all(target_arch = "x86_64", target_pointer_size = "64"))]
static_assert_size!(ObligationCauseCode<'_>, 32);
- #[derive(Clone, Debug, PartialEq, Eq, Hash)]
---- rustc-1.44.1-src/src/librustc_middle/ty/mod.rs.orig 2020-06-17 22:17:05.000000000 +0200
-+++ rustc-1.44.1-src/src/librustc_middle/ty/mod.rs 2020-09-19 21:16:08.469909685 +0200
-@@ -614,7 +614,7 @@
+ #[derive(Clone, Debug, PartialEq, Eq, Hash, Lift)]
+--- rustc-1.47.0-src.orig/src/librustc_middle/ty/mod.rs 2020-10-07 09:53:22.000000000 +0200
++++ rustc-1.47.0-src/src/librustc_middle/ty/mod.rs 2020-10-30 13:52:39.925285960 +0100
+@@ -604,7 +604,7 @@
}
// `TyS` is used a lot. Make sure it doesn't unintentionally get bigger.
@@ -95,9 +95,9 @@
static_assert_size!(TyS<'_>, 32);
impl<'tcx> Ord for TyS<'tcx> {
---- rustc-1.44.1-src/src/librustc_middle/ty/sty.rs.orig 2020-06-17 22:17:05.000000000 +0200
-+++ rustc-1.44.1-src/src/librustc_middle/ty/sty.rs 2020-09-19 21:16:35.264650688 +0200
-@@ -212,7 +212,7 @@
+--- rustc-1.47.0-src.orig/src/librustc_middle/ty/sty.rs 2020-10-07 09:53:22.000000000 +0200
++++ rustc-1.47.0-src/src/librustc_middle/ty/sty.rs 2020-10-30 13:52:39.925285960 +0100
+@@ -213,7 +213,7 @@
}
// `TyKind` is used a lot. Make sure it doesn't unintentionally get bigger.
@@ -106,31 +106,31 @@
static_assert_size!(TyKind<'_>, 24);
/// A closure can be modeled as a struct that looks like:
---- rustc-1.44.1-src/src/librustc_infer/traits/mod.rs.orig 2020-06-17 22:17:05.000000000 +0200
-+++ rustc-1.44.1-src/src/librustc_infer/traits/mod.rs 2020-09-19 22:11:38.115874035 +0200
-@@ -57,7 +57,7 @@
+--- rustc-1.47.0-src.orig/src/librustc_infer/traits/mod.rs 2020-10-07 09:53:22.000000000 +0200
++++ rustc-1.47.0-src/src/librustc_infer/traits/mod.rs 2020-10-30 13:53:29.548462138 +0100
+@@ -56,7 +56,7 @@
pub type TraitObligation<'tcx> = Obligation<'tcx, ty::PolyTraitPredicate<'tcx>>;
// `PredicateObligation` is used a lot. Make sure it doesn't unintentionally get bigger.
-#[cfg(target_arch = "x86_64")]
+#[cfg(all(target_arch = "x86_64", target_pointer_size = "64"))]
- static_assert_size!(PredicateObligation<'_>, 112);
+ static_assert_size!(PredicateObligation<'_>, 40);
pub type Obligations<'tcx, O> = Vec<Obligation<'tcx, O>>;
---- rustc-1.44.1-src/src/librustc_trait_selection/traits/fulfill.rs.orig 2020-06-17 22:17:05.000000000 +0200
-+++ rustc-1.44.1-src/src/librustc_trait_selection/traits/fulfill.rs 2020-09-20 07:47:50.724260889 +0200
-@@ -80,7 +80,7 @@
+--- rustc-1.47.0-src.orig/src/librustc_trait_selection/traits/fulfill.rs 2020-10-07 09:53:22.000000000 +0200
++++ rustc-1.47.0-src/src/librustc_trait_selection/traits/fulfill.rs 2020-10-30 13:53:12.381849892 +0100
+@@ -85,7 +85,7 @@
}
// `PendingPredicateObligation` is used a lot. Make sure it doesn't unintentionally get bigger.
-#[cfg(target_arch = "x86_64")]
+#[cfg(all(target_arch = "x86_64", target_pointer_size = "64"))]
- static_assert_size!(PendingPredicateObligation<'_>, 136);
+ static_assert_size!(PendingPredicateObligation<'_>, 64);
impl<'a, 'tcx> FulfillmentContext<'tcx> {
---- rustc-1.44.1-src/src/librustc_trait_selection/lib.rs.orig 2020-06-17 22:17:05.000000000 +0200
-+++ rustc-1.44.1-src/src/librustc_trait_selection/lib.rs 2020-09-20 09:46:06.127051487 +0200
-@@ -22,7 +22,7 @@
+--- rustc-1.47.0-src.orig/src/librustc_trait_selection/lib.rs 2020-10-07 09:53:22.000000000 +0200
++++ rustc-1.47.0-src/src/librustc_trait_selection/lib.rs 2020-10-30 13:52:39.925285960 +0100
+@@ -20,7 +20,7 @@
#[macro_use]
extern crate rustc_macros;
@@ -139,14 +139,3 @@
#[macro_use]
extern crate rustc_data_structures;
#[macro_use]
---- rustc-1.44.1-src/src/librustc_mir_build/hair/mod.rs.orig 2020-06-17 22:17:05.000000000 +0200
-+++ rustc-1.44.1-src/src/librustc_mir_build/hair/mod.rs 2020-09-20 11:22:53.936804032 +0200
-@@ -94,7 +94,7 @@
- }
-
- // `Expr` is used a lot. Make sure it doesn't unintentionally get bigger.
--#[cfg(target_arch = "x86_64")]
-+#[cfg(all(target_arch = "x86_64", target_pointer_size = "64"))]
- rustc_data_structures::static_assert_size!(Expr<'_>, 168);
-
- /// The Hair trait implementor lowers their expressions (`&'tcx H::Expr`)
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/rust.git/commitdiff/d794f84ff8fc9f67069b3b8d23850fd9e2e791a8
More information about the pld-cvs-commit
mailing list