summaryrefslogtreecommitdiff
path: root/dev-lang/ghc/files/ghc-8.2.1_rc3-stginit-data.patch
diff options
context:
space:
mode:
authorSergei Trofimovich <slyfox@gentoo.org>2017-07-23 12:15:24 +0100
committerSergei Trofimovich <slyfox@gentoo.org>2017-07-23 12:15:34 +0100
commit08a41d2dff99645af6ac5a7bb4774f5f193b6f20 (patch)
tree1ef5b2cb1239a7cbbe9779d776bfd17e6fd01f70 /dev-lang/ghc/files/ghc-8.2.1_rc3-stginit-data.patch
parent313886837d2d89c6a937cc055be15f9ffc7b8cd9 (diff)
downloadgentoo-08a41d2dff99645af6ac5a7bb4774f5f193b6f20.tar.gz
gentoo-08a41d2dff99645af6ac5a7bb4774f5f193b6f20.tar.xz
dev-lang/ghc: bump up to 8.2.1 with x86 and amd64 binaries, no KEYWORDS yet
Package-Manager: Portage-2.3.6, Repoman-2.3.3
Diffstat (limited to 'dev-lang/ghc/files/ghc-8.2.1_rc3-stginit-data.patch')
-rw-r--r--dev-lang/ghc/files/ghc-8.2.1_rc3-stginit-data.patch27
1 files changed, 27 insertions, 0 deletions
diff --git a/dev-lang/ghc/files/ghc-8.2.1_rc3-stginit-data.patch b/dev-lang/ghc/files/ghc-8.2.1_rc3-stginit-data.patch
new file mode 100644
index 00000000000..81e751d778c
--- /dev/null
+++ b/dev-lang/ghc/files/ghc-8.2.1_rc3-stginit-data.patch
@@ -0,0 +1,27 @@
+Fix label type for __stginit_* labels: those are .data labels, not .text
+
+Noticed when was building --enable-unregisterised build for x86_64:
+
+/tmp/ghc22931_0/ghc_3.hc:5:9: error:
+ error: '__stginit_ghczmprim_GHCziTypes' redeclared as different kind of symbol
+ StgWord __stginit_ghczmprim_GHCziTypes[]__attribute__((aligned(8)))= {
+ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ |
+5 | StgWord __stginit_ghczmprim_GHCziTypes[]__attribute__((aligned(8)))= {
+ | ^
+
+In file included from /tmp/ghc22931_0/ghc_3.hc:3:0: error:
+
+/tmp/ghc22931_0/ghc_3.hc:4:5: error:
+ note: previous declaration of '__stginit_ghczmprim_GHCziTypes' was here
+ EF_(__stginit_ghczmprim_GHCziTypes);
+ ^
+diff --git a/compiler/cmm/CLabel.hs b/compiler/cmm/CLabel.hs
+index 77a889a..05d71ab 100644
+--- a/compiler/cmm/CLabel.hs
++++ b/compiler/cmm/CLabel.hs
+@@ -956,3 +956,3 @@ labelType (CaseLabel _ CaseReturnInfo) = DataLabel
+ labelType (CaseLabel _ _) = CodeLabel
+-labelType (PlainModuleInitLabel _) = CodeLabel
++labelType (PlainModuleInitLabel _) = DataLabel
+ labelType (SRTLabel _) = DataLabel