[GHC] #9825: ghc "panic! (the 'impossible' happened)" building vimus on NixOS

GHC ghc-devs at haskell.org
Sat Sep 5 05:28:33 UTC 2015


#9825: ghc "panic! (the 'impossible' happened)" building vimus on NixOS
-------------------------------------+-------------------------------------
        Reporter:  jzellner          |                   Owner:
            Type:  bug               |                  Status:  new
        Priority:  normal            |               Milestone:
       Component:  Runtime System    |                 Version:  7.8.3
  (Linker)                           |
      Resolution:                    |                Keywords:
Operating System:  Linux             |            Architecture:  x86
 Type of failure:  Compile-time      |               Test Case:
  crash                              |
      Blocked By:                    |                Blocking:
 Related Tickets:                    |  Differential Revisions:
-------------------------------------+-------------------------------------

Comment (by ezyang):

 So, I have a theory. However, it doesn't explain why the shindig works on
 64-bit Linux.

 `nm_getyx` is defined in a cbits of the package being compiled. However,
 Cabal builds cbits AFTER the compilation of the actual package. This means
 that there isn't actually any object file which defines the symbol being
 looked for, so of course it fails. See
 https://github.com/haskell/cabal/issues/1738 for an existing report.

 Less clear, is why it manages to compile with 64-bit Linux. (On Mac OS X,
 there's lazy symbol resolution, so as long as you didn't actually use the
 symbol it will link up.)

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


More information about the ghc-tickets mailing list