Skip to content

TcSimplify.lhs:(2093,13)-(2094,38): Non-exhaustive patterns

Dear ghc developers,

instead of giving some kind of 'unresolved overloading'
error message, the following code

% cat Bug.hs
{-# OPTIONS_GHC -fglasgow-exts #-}
module Bug where

class Foo a
instance Foo (a -> b)

foo :: Foo a => a -> ()
foo = undefined

class Bar a r
-- The same happens if we use fundeps:
-- class Bar a r | r -> a

bar :: Bar a r => r -> ()
bar = undefined

test = foo bar

causes ghc to panic:

% ghc Bug.hs
ghc-6.5.20050709: panic! (the `impossible' happened,
GHC version 6.5.20050709):
        typecheck/TcSimplify.lhs:(2093,13)-(2094,38):
Non-exhaustive patterns in case


Best regards,

Thomas Jäger
Trac metadata
Trac field Value
Version None
Type Bug
TypeOfFailure OtherFailure
Priority normal
Resolution ResolvedFixed
Component Compiler (Type checker)
Test case
Differential revisions
BlockedBy
Related
Blocking
CC
Operating system
Architecture
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information