diff --git a/src/Data/Int/Int24.hs b/src/Data/Int/Int24.hs
--- a/src/Data/Int/Int24.hs
+++ b/src/Data/Int/Int24.hs
@@ -1,4 +1,4 @@
-{-# LANGUAGE MagicHash, NoImplicitPrelude #-}
+{-# LANGUAGE MagicHash, NoImplicitPrelude, BangPatterns #-}
 
 -----------------------------------------------------------------------------
 -- |
diff --git a/src/Data/Word/Word24.hs b/src/Data/Word/Word24.hs
--- a/src/Data/Word/Word24.hs
+++ b/src/Data/Word/Word24.hs
@@ -1,4 +1,4 @@
-{-# LANGUAGE MagicHash #-}
+{-# LANGUAGE MagicHash, BangPatterns #-}
 
 -- |
 -- Module      : Data.Word.Word24
@@ -147,7 +147,7 @@
       w2' = (fromIntegral :: (Word8 -> Word24)) w2
       w3' = (fromIntegral :: (Word8 -> Word24)) w3
       w = w1' .|. (w2' `shiftL` 8) .|. (w3' `shiftL` 16)
-  return $ fromIntegral w
+  return w
 
 writeWord24ToPtr :: Ptr Word24 -> Word24 -> IO ()
 writeWord24ToPtr p v = do
diff --git a/word24.cabal b/word24.cabal
--- a/word24.cabal
+++ b/word24.cabal
@@ -1,5 +1,5 @@
 name:		word24
-version:        0.1.2
+version:        0.1.4
 synopsis:       24-bit word and int types for GHC
 description:	24-bit Word and Int data types.
 category:       Data
@@ -63,7 +63,6 @@
       test-framework             >= 0.2 && < 0.3,
       test-framework-quickcheck2 >= 0.2 && < 0.3
   else
-    executable: False
     buildable:  False
 
   if flag(splitBase)
