--
-----------------------------------------------------------------------------
+-- #hide
module Foreign.C.TypesISO
+#ifndef __NHC__
( -- Integral types, instances of: Eq, Ord, Num, Read, Show, Enum,
-- Typeable, Storable, Bounded, Real, Integral, Bits
CPtrdiff, CSize, CWchar, CSigAtomic
-- Numeric types, instances of: Eq, Ord, Num, Read, Show, Enum,
-- Typeable, Storable
, CClock, CTime
+#else
+ ( -- For nhc98, these are exported non-abstractly to work around
+ -- an interface-file problem.
+ CPtrdiff(..), CSize(..), CWchar(..), CSigAtomic(..)
+ , CClock(..), CTime(..)
+#endif
-- Instances of: Eq and Storable
, CFile, CFpos, CJmpBuf
#ifdef __NHC__
import NHC.FFI
- ( CPtrdiff
- , CSize
- , CWchar
- , CSigAtomic
- , CClock
- , CTime
+ ( CPtrdiff(..)
+ , CSize(..)
+ , CWchar(..)
+ , CSigAtomic(..)
+ , CClock(..)
+ , CTime(..)
, CFile
, CFpos
, CJmpBuf
import Data.Bits ( Bits(..) )
import Data.Int
import Data.Word
-import Data.Dynamic
+import Data.Typeable
import Foreign.Storable
#ifdef __GLASGOW_HASKELL__
import Foreign.Ptr
#endif
-#include "Dynamic.h"
+#include "Typeable.h"
#include "CTypes.h"
INTEGRAL_TYPE(CPtrdiff,tyConCPtrdiff,"CPtrdiff",HTYPE_PTRDIFF_T)