Rebuilding ghc changes interface hashes?
Joachim Breitner
nomeata at debian.org
Sat Apr 9 07:16:54 CEST 2011
Hi,
Am Freitag, den 08.04.2011, 22:00 +0200 schrieb Matthias Kilian:
> On Wed, Apr 06, 2011 at 08:44:33PM +0200, Matthias Kilian wrote:
> > I still have to find my noticeses about wether cBooterVersion affects
> > more than only the ghc lib.
>
> Did a quick test the other day; bootstrapping ghc-7.0.3 from
> ghc-6.12.3 with two different VERSION_DATE files. The only visible
> change was in the ghc library, so this part indeed isn't worth any
> work.
This is one of the changes causing a break in the base library. "-" is
bootstrapped with 7.0.2, "+" was bootstrapped with 6.12.
# diff -u <(ghc --show-iface /usr/lib/ghc-7.0.2/base-4.3.1.0/GHC/List.hi) <(ghc --show-iface /other/usr/lib/ghc-7.0.2/base-4.3.1.0/GHC/List.hi)
--- /dev/fd/63 2011-04-09 05:14:12.454269915 +0000
+++ /dev/fd/62 2011-04-09 05:14:12.454269915 +0000
@@ -5,8 +5,8 @@
Way: Wanted [],
got []
interface base:GHC.List 7002
- interface hash: 87193984226122c2dd5964fd86876196
- ABI hash: 8d7faf049b24c406583f0286cc44d7db
+ interface hash: d8ee4b841dafe12780c3b173e214b5c7
+ ABI hash: 180a90cd1355a939180d28fcca979825
export-list hash: 0c27906a7932ade6018f397c78520a54
orphan hash: 693e9af84d3dfcc71e640e005bdc5e2e
where
@@ -151,7 +151,7 @@
case @ a ds of wild { [] -> z : x xs -> lgo (f z x) xs }
} in
lgo z0 xs0) -}
-4314014978c443774e83654e714a6768
+a018d005d4132f400d13b973d8352563
foldr1 :: forall a. (a -> a -> a) -> [a] -> a
{- Arity: 2, Strictness: LS,
Unfolding: (\ @ a ds :: a -> a -> a ds1 :: [a] ->
@@ -161,9 +161,9 @@
-> case @ a ds2 of wild1 {
[] -> x
: ipv ipv1
- -> ds x (GHC.List.foldr1_$sfoldr1 @ a ipv ipv1 ds) } }) -}
-7e3de2c9e0866b189d8f94b9801e6793
- foldr1_$sfoldr1 :: forall a. a -> [a] -> (a -> a -> a) -> a
+ -> ds x (GHC.List.foldr1_$sfoldr1 @ a ds ipv ipv1) } }) -}
+68a72d0de3128a684265d8108a56fd7b
+ foldr1_$sfoldr1 :: forall a. (a -> a -> a) -> a -> [a] -> a
{- Arity: 3, HasNoCafRefs, Strictness: LLL -}
328ef6e4bc937a0ad2498240a9327c37
foldr2 :: forall a b c. (a -> b -> c -> c) -> c -> [a] -> [b] -> c
@@ -489,10 +489,10 @@
r :: b ->
c (f x y) r) -}
"SC:GHC.List.foldr10" [ALWAYS] forall @ a
- sc :: a
- sc1 :: [a]
- sc2 :: a -> a -> a
- GHC.List.foldr1 @ a sc2 (GHC.Types.: @ a sc sc1)
+ sc :: a -> a -> a
+ sc1 :: a
+ sc2 :: [a]
+ GHC.List.foldr1 @ a sc (GHC.Types.: @ a sc1 sc2)
= GHC.List.foldr1_$sfoldr1 @ a sc sc1 sc2
"all/build" [ALWAYS] forall @ a
p :: a -> GHC.Bool.Bool
So something about the order of arguments changed. I don’t see how that
should be influenced by the bootstrapping compiler, but I hope it is –
if it were not any rebuild of ghc would risk changing the ABI hashes...
Greetings,
Joachim
--
Joachim "nomeata" Breitner
Debian Developer
nomeata at debian.org | ICQ# 74513189 | GPG-Keyid: 4743206C
JID: nomeata at joachim-breitner.de | http://people.debian.org/~nomeata
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <http://www.haskell.org/pipermail/glasgow-haskell-users/attachments/20110409/b243066c/attachment.pgp>
More information about the Glasgow-haskell-users
mailing list