X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=Data%2FTypeable.hs;h=efb020e4fcaf571655d19e35ab97b788a4abc594;hb=e9e2a5412bb7cda8d13a063ac403d9f18ac97380;hp=4c633991d3a10dcc2d7e137857e0403599daa265;hpb=e6593a2d027bf4beb737b6760a1a6e024bc74982;p=ghc-base.git diff --git a/Data/Typeable.hs b/Data/Typeable.hs index 4c63399..efb020e 100644 --- a/Data/Typeable.hs +++ b/Data/Typeable.hs @@ -1,4 +1,4 @@ -{-# OPTIONS -fno-implicit-prelude #-} +{-# OPTIONS_GHC -fno-implicit-prelude #-} ----------------------------------------------------------------------------- -- | -- Module : Data.Typeable @@ -96,7 +96,9 @@ import GHC.Num import GHC.Float import GHC.Real( rem, Ratio ) import GHC.IOBase +import GHC.ST -- So we can give Typeable instance for ST import GHC.Ptr -- So we can give Typeable instance for Ptr +import GHC.ForeignPtr -- So we can give Typeable instance for ForeignPtr import GHC.Stable -- So we can give Typeable instance for StablePtr #endif @@ -463,6 +465,10 @@ INSTANCE_TYPEABLE1(Ratio,ratioTc,"Ratio") INSTANCE_TYPEABLE2(Either,eitherTc,"Either") INSTANCE_TYPEABLE2((->),funTc,"->") INSTANCE_TYPEABLE1(IO,ioTc,"IO") +#ifdef __GLASGOW_HASKELL__ +INSTANCE_TYPEABLE2(ST,stTc,"ST") +INSTANCE_TYPEABLE1(ForeignPtr,foreignPtrTc,"ForeignPtr") +#endif INSTANCE_TYPEABLE0((),unitTc,"()") #ifndef __NHC__ INSTANCE_TYPEABLE2((,),pairTc,",") @@ -508,6 +514,9 @@ INSTANCE_TYPEABLE0(Char,charTc,"Char") INSTANCE_TYPEABLE0(Float,floatTc,"Float") INSTANCE_TYPEABLE0(Double,doubleTc,"Double") INSTANCE_TYPEABLE0(Int,intTc,"Int") +#ifndef __NHC__ +INSTANCE_TYPEABLE0(Word,wordTc,"Word" ) +#endif INSTANCE_TYPEABLE0(Integer,integerTc,"Integer") INSTANCE_TYPEABLE0(Ordering,orderingTc,"Ordering") INSTANCE_TYPEABLE0(Handle,handleTc,"Handle") @@ -526,7 +535,7 @@ INSTANCE_TYPEABLE0(TyCon,tyconTc,"TyCon") INSTANCE_TYPEABLE0(TypeRep,typeRepTc,"TypeRep") #ifdef __GLASGOW_HASKELL__ -INSTANCE_TYPEABLE0(Word,wordTc,"Word" ) +INSTANCE_TYPEABLE0(RealWorld,realWorldTc,"RealWorld") #endif ---------------------------------------------