[ ghc-Bugs-807249 ] Instance match failure on openTypeKind
SourceForge.net
noreply at sourceforge.net
Tue Sep 16 12:37:38 EDT 2003
Bugs item #807249, was opened at 2003-09-16 16:37
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=108032&aid=807249&group_id=8032
Category: Compiler (Type checker)
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: Simon Peyton Jones (simonpj)
Assigned to: Nobody/Anonymous (nobody)
Summary: Instance match failure on openTypeKind
Initial Comment:
Consider
instance Show (a->b) where ...
foo x = show (\ _ -> True)
This fails with:
No instance for (Show (t -> Bool))
arising from use of `show' at Foo.hs:5
Reason: the type of (\_ -> True) is (t -> Bool) where
t has an "openTypeKind". It's possible that the function
will be applied to say an Int#, and the openTypeKind
records that this is OK.
BUT, the instance decl Show (a->b) has
a::liftedTypeKind, and that doesn't match an
openTypeKind type variable.
This bug relates to GHC's unsatisfactory treatment of
the variants of kind "type", for which there are at least 2
other SourceForge bugs registered (753780 and
753777). It's very obscure, so I'm not going to fix it
today.
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=108032&aid=807249&group_id=8032
More information about the Glasgow-haskell-bugs
mailing list