-fdefer-typed-holes causes panic on unbound variable
module Main where
main = do
print v
return ()
Compile it without -fdefer-typed-holes
and it fails as expected:
➜ hole_bug ghc --make Main.hs -fforce-recomp
[1 of 1] Compiling Main ( Main.hs, Main.o )
Main.hs:4:11: error: Variable not in scope: v
Adding -fdefer-typed-holes
is causing a panic instead of runtime error:
➜ hole_bug ghc --make Main.hs -fforce-recomp -fdefer-typed-holes
[1 of 1] Compiling Main ( Main.hs, Main.o )
Main.hs:4:11: warning: [-Wtyped-holes] Variable not in scope: v
ghc: panic! (the 'impossible' happened)
(GHC version 8.0.1 for x86_64-unknown-linux):
StgCmmEnv: variable not found
$dShow_aKo
local binds for:
$trModule
$trModule1_r16k
$trModule2_r16s
sat_s16x
sat_s16z
Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
Tried with: 8.0.1, HEAD as of today.
Trac metadata
Trac field | Value |
---|---|
Version | 8.1 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | high |
Resolution | Unresolved |
Component | Compiler |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |