[Pkg-haskell-commits] darcs: ghc: debian/patches/stable-specialization-rule-names: Root out another cause or binary ABI instability.

Joachim Breitner mail at joachim-breitner.de
Mon May 25 19:32:20 UTC 2015


Mon May 25 17:29:32 UTC 2015  Joachim Breitner <mail at joachim-breitner.de>
  * debian/patches/stable-specialization-rule-names: Root out another cause or binary ABI instability.

    M ./changelog +7
    M ./patches/series +1
    A ./patches/stable-specialization-rule-names

Mon May 25 17:29:32 UTC 2015  Joachim Breitner <mail at joachim-breitner.de>
  * debian/patches/stable-specialization-rule-names: Root out another cause or binary ABI instability.
diff -rN -u old-ghc/changelog new-ghc/changelog
--- old-ghc/changelog	2015-05-25 19:32:20.612094207 +0000
+++ new-ghc/changelog	2015-05-25 19:32:20.636094800 +0000
@@ -1,3 +1,10 @@
+ghc (7.8.4-8) UNRELEASED; urgency=medium
+
+  * debian/patches/stable-specialization-rule-names: Root out another cause of
+    binary ABI instability.
+
+ -- Joachim Breitner <nomeata at debian.org>  Mon, 25 May 2015 19:28:23 +0200
+
 ghc (7.8.4-7) unstable; urgency=medium
 
   * Remove useless *.haddock.t files (upstream bug 10410)
diff -rN -u old-ghc/patches/series new-ghc/patches/series
--- old-ghc/patches/series	2015-05-25 19:32:20.612094207 +0000
+++ new-ghc/patches/series	2015-05-25 19:32:20.628094602 +0000
@@ -11,3 +11,4 @@
 PPC-relocations.patch
 buildpath-abi-stability.patch
 reproducible-tmp-names
+stable-specialization-rule-names
diff -rN -u old-ghc/patches/stable-specialization-rule-names new-ghc/patches/stable-specialization-rule-names
--- old-ghc/patches/stable-specialization-rule-names	1970-01-01 00:00:00.000000000 +0000
+++ new-ghc/patches/stable-specialization-rule-names	2015-05-25 19:32:20.628094602 +0000
@@ -0,0 +1,18 @@
+Another possible reasons for non-stable ABI hashes: names of SPEC rules. This is a backport of
+https://git.haskell.org/ghc.git/commitdiff/a477e8118137b7483d0a7680c1fd337a007a023b
+which is contained in 7.10.1.
+
+
+Index: ghc-7.8.4/compiler/specialise/Specialise.lhs
+===================================================================
+--- ghc-7.8.4.orig/compiler/specialise/Specialise.lhs	2014-04-07 20:26:08.000000000 +0200
++++ ghc-7.8.4/compiler/specialise/Specialise.lhs	2015-05-25 19:26:53.276640698 +0200
+@@ -1148,7 +1148,7 @@
+            ; let
+                 -- The rule to put in the function's specialisation is:
+                 --      forall b, d1',d2'.  f t1 b t3 d1' d2' = f1 b
+-                rule_name = mkFastString ("SPEC " ++ showSDocDump dflags (ppr fn <+> ppr spec_ty_args))
++                rule_name = mkFastString ("SPEC " ++ showSDocForUser dflags neverQualify (ppr fn <+> ppr spec_ty_args))
+                 spec_env_rule = mkRule True {- Auto generated -} is_local
+                                   rule_name
+                                   inl_act       -- Note [Auto-specialisation and RULES]




More information about the Pkg-haskell-commits mailing list