Commit d27b23c0 authored by Ian Lynagh's avatar Ian Lynagh
Browse files

Make the macros in Typeable.h add type signatures

parent 0eacb96e
......@@ -67,7 +67,7 @@ import Foreign.C.Types
#endif
import Data.Bits
import Data.Typeable ( Typeable(..), mkTyCon, mkTyConApp )
import Data.Typeable
import Foreign.Storable ( Storable(..) )
#ifdef __NHC__
......
......@@ -21,7 +21,7 @@ module GHC.Weak where
import GHC.Base
import Data.Maybe
import GHC.IOBase ( IO(..), unIO )
import Data.Typeable ( Typeable1(..), mkTyCon, mkTyConApp )
import Data.Typeable
{-|
A weak pointer object with a key and a value. The value has type @v@.
......
......@@ -15,6 +15,7 @@
#define TYPEABLE_H
#define INSTANCE_TYPEABLE0(tycon,tcname,str) \
tcname :: TyCon; \
tcname = mkTyCon str; \
instance Typeable tycon where { typeOf _ = mkTyConApp tcname [] }
......@@ -24,14 +25,17 @@ instance Typeable tycon where { typeOf _ = mkTyConApp tcname [] }
-- // defined in Data.Typeable.
#define INSTANCE_TYPEABLE1(tycon,tcname,str) \
tcname :: TyCon; \
tcname = mkTyCon str; \
instance Typeable1 tycon where { typeOf1 _ = mkTyConApp tcname [] }
#define INSTANCE_TYPEABLE2(tycon,tcname,str) \
tcname :: TyCon; \
tcname = mkTyCon str; \
instance Typeable2 tycon where { typeOf2 _ = mkTyConApp tcname [] }
#define INSTANCE_TYPEABLE3(tycon,tcname,str) \
tcname :: TyCon; \
tcname = mkTyCon str; \
instance Typeable3 tycon where { typeOf3 _ = mkTyConApp tcname [] }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment