Error: symbol `ghczmprim_GHCziUnit_Z0T_closure' is already defined
This module:
module Foo where
f :: Int -> Int
f _ | () `seq` False = undefined
| otherwise = error "XXX"
g :: Int -> Int
g _ | () `seq` False = undefined
| otherwise = error "XXX"
doesn't compile with 6.8.3 or the HEAD; here's what happens with the HEAD (compiled with -DDEBUG, but I'm pretty sure it wouldn't work anyway):
$ ghc -fforce-recomp -c Foo.hs
ghc-6.9.20080701: panic! (the 'impossible' happened)
(GHC version 6.9.20080701 for x86_64-unknown-linux):
ASSERT failed! file stgSyn/CoreToStg.lhs line 922 (){v 71} [lid]
Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
$ ghc -fforce-recomp -c Foo.hs -O
/tmp/ghc4665_0/ghc4665_0.s: Assembler messages:
/tmp/ghc4665_0/ghc4665_0.s:95:0:
Error: symbol `ghczmprim_GHCziUnit_Z0T_closure' is already defined
The original problem report, using Takusen, is here: http://www.haskell.org/pipermail/glasgow-haskell-users/2008-June/015037.html
Trac metadata
Trac field | Value |
---|---|
Version | 6.9 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Compiler |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | Unknown |
Architecture | Unknown |