diff --git a/keyvaluehash.cabal b/keyvaluehash.cabal
--- a/keyvaluehash.cabal
+++ b/keyvaluehash.cabal
@@ -1,5 +1,5 @@
 name:                keyvaluehash
-version:             0.3.0.1
+version:             0.3.0.2
 synopsis:            Pure Haskell key/value store implementation
 -- description:         
 license:             BSD3
diff --git a/src/Database/FileArray.hs b/src/Database/FileArray.hs
--- a/src/Database/FileArray.hs
+++ b/src/Database/FileArray.hs
@@ -28,7 +28,7 @@
   , write :: a -> IO ()
   }
 
-alignPage :: Bits a => a -> a
+alignPage :: (Num a, Bits a) => a -> a
 alignPage x = (x + 0xFFF) .&. complement 0xFFF
 
 sizeOf :: Storable a => a -> Word64
@@ -64,7 +64,6 @@
 elementSize _ = sizeOf (undefined :: a)
 
 {-# INLINE unsafeElement #-}
-{-# SPECIALIZE unsafeElement :: FileArray Word64 -> Word64 -> IO (Element Word64) #-}
 unsafeElement :: Storable a => FileArray a -> Word64 -> IO (Element a)
 unsafeElement fileArray ix =
   withForeignPtr (faPtr fileArray) $ \keysPtr -> do
