Skip to content

GHCi does not work on Snow Leopard

When compiling GHC as a 32-bit application on Snow Leopard (Mac OS X 10.6), the generated ghci aborts with a Bus Error (null pointer dereference) on startup (after it has loaded all packages). This happens only when GHC was compiled on Snow Leopard (not if a binary built on Leopard is used on Snow Leopard) and if GHCi is used interactively (if a set of commands is redirected into ghci —as in ghc < myscript— the problem doesn't occur).

In addition to the failure of GHCi on startup for interactive use, the following five regression tests fail when validating:

   TH_repE2(normal)               -- the failing declaration is: an_integer
   TH_repPrim(normal)             -- the failing tests is: [| D# 24.6## |]
   ann01(normal)                  -- all annotations with a Double fail
   ffi018_ghci(ghci)
   prog002(ghci)

Moreover, with WAY=ghci in codeGen/, we have the following failures:

   cg014(ghci)
   cg024(ghci)
   cg026(ghci)
   cg028(ghci)
   cg034(ghci)
   cg035(ghci)
   cg044(ghci)

Observation: All of the failing tests use 'Double'.

Workaround: For the 6.12 release, by building a 32-bit binary on Leopard for use on both Leopard and Snow Leopard, the fault on starting GHCi can be avoided. I haven't checked whether that avoids the problems with the listed regressions, too.

Trac metadata
Trac field Value
Version 6.11
Type Bug
TypeOfFailure OtherFailure
Priority normal
Resolution Unresolved
Component GHCi
Test case
Differential revisions
BlockedBy
Related
Blocking
CC
Operating system
Architecture
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information