diff --git a/Database/HDBC/SqlValue.hs b/Database/HDBC/SqlValue.hs
--- a/Database/HDBC/SqlValue.hs
+++ b/Database/HDBC/SqlValue.hs
@@ -16,11 +16,9 @@
 import Data.Int
 import qualified System.Time as ST
 import Data.Time
-import Data.Time.Clock
 import Data.Time.Clock.POSIX
 import Database.HDBC.Locale (defaultTimeLocale, iso8601DateFormat)
 import Data.Ratio
-import Control.Monad.Error
 import Data.Convertible
 import Data.Fixed
 
@@ -299,8 +297,8 @@
 
 instance Convertible Int SqlValue where
     safeConvert x = 
-        do i <- ((safeConvert x)::ConvertResult Int32)
-           return $ SqlInt32 i
+        do i <- ((safeConvert x)::ConvertResult Int64)
+           return $ SqlInt64 i
 instance Convertible SqlValue Int where
     safeConvert (SqlString x) = read' x
     safeConvert (SqlByteString x) = (read' . BUTF8.toString) x
diff --git a/Database/HDBC/Types.hs b/Database/HDBC/Types.hs
--- a/Database/HDBC/Types.hs
+++ b/Database/HDBC/Types.hs
@@ -46,7 +46,6 @@
 
 where
 import Database.HDBC.Statement
-import Database.HDBC.SqlValue
 import Database.HDBC.ColTypes
 import Control.Exception ( finally )
 
@@ -99,7 +98,7 @@
                 runRaw :: conn -> String -> IO ()
                 runRaw conn sql = do
                   sth <- prepare conn sql
-                  execute sth [] `finally` finish sth
+                  _ <- execute sth [] `finally` finish sth
                   return ()
                 {- | Execute a single SQL query.  Returns the number
                    of rows modified (see 'execute' for details).
diff --git a/Database/HDBC/Utils.hs b/Database/HDBC/Utils.hs
--- a/Database/HDBC/Utils.hs
+++ b/Database/HDBC/Utils.hs
@@ -203,7 +203,7 @@
 fetchAllRows' :: Statement -> IO [[SqlValue]]
 fetchAllRows' sth =
     do res <- fetchAllRows sth
-       evalAll res
+       _ <- evalAll res
        return res
 
 {- | Like 'fetchAllRows', but return Maybe Strings instead of 'SqlValue's. -}
@@ -216,7 +216,7 @@
 sFetchAllRows' :: Statement -> IO [[Maybe String]]
 sFetchAllRows' sth =
     do res <- sFetchAllRows sth
-       evalAll res
+       _ <- evalAll res
        return res
 
 {- | Like 'fetchRow', but instead of returning a list, return an association
@@ -239,9 +239,9 @@
 fetchRowAL' :: Statement -> IO (Maybe [(String, SqlValue)])
 fetchRowAL' sth =
     do res <- fetchRowAL sth
-       case res of
-            Nothing -> return 0
-            Just x -> evaluate ((genericLength x)::Integer)
+       _ <- case res of
+         Nothing -> return 0
+         Just x -> evaluate ((genericLength x)::Integer)
        return res
 
 {- | Similar to 'fetchRowAL', but return a Map instead of an association list.
@@ -257,7 +257,7 @@
 fetchRowMap' :: Statement -> IO (Maybe (Map.Map String SqlValue))
 fetchRowMap' sth = 
     do res <- fetchRowMap sth
-       case res of
+       _ <- case res of
             Nothing -> return 0
             Just x -> evaluate ((genericLength (Map.toList x))::Integer)
        return res
@@ -277,7 +277,7 @@
 fetchAllRowsAL' :: Statement -> IO [[(String, SqlValue)]]
 fetchAllRowsAL' sth =
     do res <- fetchAllRowsAL sth
-       evalAll res
+       _ <- evalAll res
        return res
 
 {- | Like 'fetchAllRowsAL', but return a list of Maps instead of a list of
@@ -289,7 +289,7 @@
 fetchAllRowsMap' :: Statement -> IO [Map.Map String SqlValue]
 fetchAllRowsMap' sth = 
     do res <- fetchAllRowsMap sth
-       evaluate ((genericLength res)::Integer)
+       _ <- evaluate ((genericLength res)::Integer)
        return res
 
 {- | A quick way to do a query.  Similar to preparing, executing, and
@@ -297,14 +297,14 @@
 quickQuery :: IConnection conn => conn -> String -> [SqlValue] -> IO [[SqlValue]]
 quickQuery conn qrystr args =
     do sth <- prepare conn qrystr
-       execute sth args
+       _ <- execute sth args
        fetchAllRows sth
 
 {- | Strict version of 'quickQuery'. -}
 quickQuery' :: IConnection conn => conn -> String -> [SqlValue] -> IO [[SqlValue]]
 quickQuery' conn qrystr args =
     do res <- quickQuery conn qrystr args
-       evalAll res
+       _ <- evalAll res
        return res
 
 {- | A utility function to throw a 'SqlError'.  The mechanics of throwing
diff --git a/HDBC.cabal b/HDBC.cabal
--- a/HDBC.cabal
+++ b/HDBC.cabal
@@ -1,5 +1,5 @@
 Name: HDBC
-Version: 2.2.4
+Version: 2.2.5
 License: LGPL
 Maintainer: John Goerzen <jgoerzen@complete.org>
 Author: John Goerzen
@@ -47,8 +47,9 @@
   GHC-Options: -O2 -Wall -fno-warn-orphans
 
   Exposed-Modules: Database.HDBC, Database.HDBC.Types, Database.HDBC.DriverUtils,
-    Database.HDBC.ColTypes, Database.HDBC.Statement, Database.HDBC.SqlValue
-  Other-Modules: Database.HDBC.Utils, Database.HDBC.Locale
+    Database.HDBC.ColTypes, Database.HDBC.Statement, Database.HDBC.SqlValue,
+    Database.HDBC.Locale
+  Other-Modules: Database.HDBC.Utils
   Extensions: ExistentialQuantification, CPP, MultiParamTypeClasses,
     FlexibleContexts, TypeSynonymInstances, TypeOperators, RankNTypes,
     FlexibleInstances
@@ -56,7 +57,7 @@
 Executable runtests
    if flag(buildtests)
       Buildable: True
-      Build-Depends: HUnit, QuickCheck, testpack
+      Build-Depends: HUnit, QuickCheck (>= 2.0), testpack (>= 2.0)
 
       if flag(splitBase)
         Build-Depends: base>=3 && <5, old-time, time>=1.1.2.4 && <=1.1.4, bytestring, containers, old-locale
diff --git a/testsrc/TestInfrastructure.hs b/testsrc/TestInfrastructure.hs
--- a/testsrc/TestInfrastructure.hs
+++ b/testsrc/TestInfrastructure.hs
@@ -14,4 +14,4 @@
 q = qc2hu 250
 
 qverbose :: QC.Testable a => String -> a -> HU.Test
-qverbose = qc2huVerbose 250
+qverbose = qc2hu 250
diff --git a/testsrc/TestSqlValue.hs b/testsrc/TestSqlValue.hs
--- a/testsrc/TestSqlValue.hs
+++ b/testsrc/TestSqlValue.hs
@@ -8,7 +8,8 @@
 
 module TestSqlValue where
 import TestInfrastructure
-import Test.QuickCheck
+import Test.QuickCheck hiding (Result)
+import Test.QuickCheck.Property (Result)
 import Test.QuickCheck.Tools
 import qualified Test.HUnit as HU
 import Database.HDBC
@@ -22,11 +23,11 @@
              zonedTimeZone a == zonedTimeZone b
 
 toSql_Int :: Int -> Result
-toSql_Int x = toSql x @?= SqlInt32 (fromIntegral x)
+toSql_Int x = toSql x @?= SqlInt64 (fromIntegral x)
 
 fromSql_Int :: Int -> Result
 fromSql_Int x = 
-    Right x @=? safeFromSql (SqlInt32 (fromIntegral x))
+    Right x @=? safeFromSql (SqlInt64 (fromIntegral x))
 
 testZonedTimeStr = "1989-08-01 15:33:01 -0500"
 testZonedTime :: ZonedTime
