Skip to content

isInstance does not work on Typeable with base-4.8 anymore

> :set -XTemplateHaskell
> :m +Data.Typeable
> :m +Language.Haskell.TH

--- With GHC 7.8 or earlier versions of GHC (I only tried with GHC 7.6, but my friends tried on 7.8 and earlier versions)
> $(isInstance ''Typeable [ConT ''Char] >>= stringE.show)
"True"

--- With GHC 7.10.1
> $(isInstance ''Typeable [ConT ''Char] >>= stringE.show)
"False"

I have noticed that standalone derivings of Typeable instances in Data.Typeable are disappared magically in base-4.8 of GHC 7.10,also one cannot query the instances of it by using :i Typeable in GHCi, however, obviously, I can use typeOf function in base-4.8 to get the TypeRep of Char.

The problem is that isInstance in template-haskell library doesn't know Char and many other types are instances of Typeable anymore.

Trac metadata
Trac field Value
Version 7.10.1
Type Bug
TypeOfFailure OtherFailure
Priority normal
Resolution Unresolved
Component libraries/base
Test case
Differential revisions
BlockedBy
Related
Blocking
CC
Operating system
Architecture
Edited by songzh
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information