[GHC] #4012: Compilation results are not deterministic

GHC cvs-ghc at haskell.org
Fri Jun 15 09:42:47 CEST 2012


#4012: Compilation results are not deterministic
-------------------------------+--------------------------------------------
  Reporter:  kili              |          Owner:                      
      Type:  bug               |         Status:  new                 
  Priority:  high              |      Milestone:  7.6.1               
 Component:  Compiler          |        Version:  6.12.2              
Resolution:                    |       Keywords:                      
        Os:  Unknown/Multiple  |   Architecture:  Unknown/Multiple    
   Failure:  Other             |     Difficulty:  Difficult (2-5 days)
  Testcase:                    |      Blockedby:                      
  Blocking:                    |        Related:                      
-------------------------------+--------------------------------------------

Comment(by nomeata):

 Let me illustrate one consequence of this problem. In Debian, the freeze
 for wheezy is near. We have just managed to migrate ghc-7.4.1 to wheezy,
 but there are a few remaining bugs of various severity (#5991, #6156) and
 having GHCi on ARM would be nice as well. Alas, we cannot upgrade to
 ghc-7.4.2 which provides all this, as it would require rebuilding
 everything, which is not possible at this stage any more
 (http://lists.debian.org/debian-haskell/2012/06/msg00038.html).

 What we will probably do is to backport fixes from 7.4.2 onto 7.4.1, but
 this is not nice either, as it might introduce new bugs and makes our ghc
 deviate more and more from upstream.

 Ideally, if 7.4.2 does not change anything about the actual ABI, it would
 not force it to change completely. Currently, it does, by encoding the
 version number in every hash (#5328; granted, I filed that, but that does
 not mean its the best solution :-)). It should do something like haddock:
 Keep an internal counter, separate from the version number, that is
 increased if indeed everything needs to be rebuilt, e.g. changes in the
 .hi file format, in the calling convention etc. (← identifying this list
 is probably non-trivial). And if a new compiler version is released that
 does not do any of these, the number stays the same and previously
 compiled packages can be re-used.

 This would also require the file names of installed packages to not
 include the ghc version but the ghc abi interface number; but configuring
 this can be left to the distributions.

 (Hmm, this is not _really_ this bug, but closely related.)

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/4012#comment:17>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler



More information about the Glasgow-haskell-bugs mailing list