Panic in typechecker when checking rules
GHC will panic when given either of the following modules. The error messages are somewhat different for the two different rules.
module GHCBug1 where
foo :: (forall a . a -> f a) -> f Int
foo f = f undefined
{-# RULES
"bug1"
forall (g :: a -> f a) .
head (foo g) = undefined
#-}
module GHCBug2 where
foo :: (forall a . a -> f a) -> f Int
foo f = f undefined
{-# RULES
"bug2"
forall (g :: forall a . a -> f a) .
head (foo g) = undefined
#-}
Trac metadata
Trac field | Value |
---|---|
Version | 6.8.2 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Compiler (Type checker) |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |