diff --git a/Data/Convertible/Instances/Time.hs b/Data/Convertible/Instances/Time.hs
--- a/Data/Convertible/Instances/Time.hs
+++ b/Data/Convertible/Instances/Time.hs
@@ -58,11 +58,15 @@
 
 ------------------------------ POSIX and UTC times
 
+#if __GLASGOW_HASKELL__ >= 610
+-- instances added in GHC 6.10.3
+#else
 instance Typeable NominalDiffTime where
     typeOf _ = mkTypeName "NominalDiffTime"
 
 instance Typeable UTCTime where
     typeOf _ = mkTypeName "UTCTime"
+#endif
 
 {- Covered under Real a
 instance Convertible Rational POSIXTime where
@@ -212,9 +216,13 @@
 
 instance Convertible Integer ST.TimeDiff where
     safeConvert = convertVia (undefined::NominalDiffTime)
+instance Convertible Double ST.TimeDiff where
+    safeConvert = convertVia (undefined::NominalDiffTime)
 instance Convertible ST.TimeDiff Integer where
     safeConvert = convertVia (undefined :: NominalDiffTime)
 instance Convertible ST.TimeDiff Rational where
+    safeConvert = convertVia (undefined :: NominalDiffTime)
+instance Convertible ST.TimeDiff Double where
     safeConvert = convertVia (undefined :: NominalDiffTime)
 
 ----------------------------------------------------------------------
diff --git a/convertible.cabal b/convertible.cabal
--- a/convertible.cabal
+++ b/convertible.cabal
@@ -1,5 +1,5 @@
 Name: convertible
-Version: 1.0.1
+Version: 1.0.3
 License: LGPL
 Maintainer: John Goerzen <jgoerzen@complete.org>
 Author: John Goerzen
@@ -63,17 +63,17 @@
   --    AllowUndecidableInstances
   Extensions: ExistentialQuantification, MultiParamTypeClasses,
               UndecidableInstances, FlexibleInstances,
-              FlexibleContexts, TypeSynonymInstances
+              FlexibleContexts, TypeSynonymInstances, CPP
   
 Executable runtests
    if flag(buildtests)
       Buildable: True
+      Build-Depends: HUnit, QuickCheck, testpack
    else
       Buildable: False
-   Build-Depends: HUnit, QuickCheck, testpack
    Main-Is: runtests.hs
    Hs-Source-Dirs: ., testsrc
    GHC-Options: -O2
    Extensions: ExistentialQuantification, MultiParamTypeClasses,
                UndecidableInstances, FlexibleInstances,
-               FlexibleContexts, TypeSynonymInstances
+               FlexibleContexts, TypeSynonymInstances, CPP
diff --git a/testsrc/runtests.hs b/testsrc/runtests.hs
new file mode 100644
--- /dev/null
+++ b/testsrc/runtests.hs
@@ -0,0 +1,17 @@
+module Main where
+import qualified Test.HUnit as HU
+import Test.HUnit.Tools
+
+import qualified TestNum
+import qualified TestMap
+import qualified TestTime
+
+test1 = HU.TestCase ((HU.@=?) "x" "x")
+
+alltests = [HU.TestLabel "test1" test1,
+            tl "TestNum" TestNum.allt,
+            tl "TestMap" TestMap.allt,
+            tl "TestTime" TestTime.allt]
+
+main = do runVerboseTests (HU.TestList alltests)
+          return ()
