
-- Killed 6.2.2
-- The trouble was that 1 was instantiated to a type (t::?)
-- and the constraint (Foo (t::? -> s::*)) didn't match Foo (a::* -> b::*).
-- Solution is to zap the expected type in TcEpxr.tc_expr(HsOverLit). 

module ShouldCompile where

class Foo a where
     foo :: a

instance Foo (a -> b) where
     foo = error "urk"

test :: ()
test = foo 1
