"Bad interface file: System/IO.hi" in ghci when ./System/IO.hs exists
I ran into this when trying to ghci a module in the base library (from http://darcs.haskell.org/packages/base), but it seems that ghci just gets confused if System/IO.hs exists under the current directory. For my purposes, it's easy enough to work around by copying the module I actually want to work on out to another directory.
jyasskin-mac:~/Temp/bug jyasskin$ mkdir System
jyasskin-mac:~/Temp/bug jyasskin$ touch System/IO.hs
jyasskin-mac:~/Temp/bug jyasskin$ cp ~/src/ghc/HEAD/ghc/libraries/base/Data/Monoid.hs .
jyasskin-mac:~/Temp/bug jyasskin$ mkdir Data
jyasskin-mac:~/Temp/bug jyasskin$ mv Monoid.hs Data/
jyasskin-mac:~/Temp/bug jyasskin$ ghci Data/Monoid.hs
___ ___ _
/ _ \ /\ /\/ __(_)
/ /_\// /_/ / / | | GHC Interactive, version 6.6, for Haskell 98.
/ /_\\/ __ / /___| | http://www.haskell.org/ghc/
\____/\/ /_/\____/|_| Type :? for help.
Loading package base ... linking ... done.
<interactive>:1:22:
Bad interface file: System/IO.hi
System/IO.hi: openBinaryFile: does not exist (No such file or directory)
ghc-6.6: panic! (the 'impossible' happened)
(GHC version 6.6 for powerpc-apple-darwin):
interactiveUI:setBuffering
Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
jyasskin-mac:~/Temp/bug jyasskin$ find .
.
./Data
./Data/Monoid.hs
./System
./System/IO.hs
jyasskin-mac:~/Temp/bug jyasskin$
Trac metadata
Trac field | Value |
---|---|
Version | 6.6 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | GHCi |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | jyasskin@gmail.com |
Operating system | MacOS X |
Architecture | powerpc |