diff --git a/Data/Array/Vector/Prim/BUArr.hs b/Data/Array/Vector/Prim/BUArr.hs
--- a/Data/Array/Vector/Prim/BUArr.hs
+++ b/Data/Array/Vector/Prim/BUArr.hs
@@ -148,8 +148,13 @@
 -- Unboxed arrays of primitive element types arrays constructed from an
 -- explicit length and a byte array in both an immutable and a mutable variant
 --
-data BUArr    e = BUArr  !Int !Int ByteArray#
-data MBUArr s e = MBUArr !Int      (MutableByteArray# s)
+data BUArr    e =
+        BUArr  {-# UNPACK #-}!Int
+               {-# UNPACK #-}!Int
+               ByteArray#
+data MBUArr s e =
+        MBUArr {-# UNPACK #-}!Int
+               (MutableByteArray# s)
 
 -- instance HS e => HS (BUArr e)
 -- instance HS e => HS (MBUArr s e)
diff --git a/uvector.cabal b/uvector.cabal
--- a/uvector.cabal
+++ b/uvector.cabal
@@ -1,5 +1,5 @@
 name:           uvector
-version:        0.1
+version:        0.1.0.1
 license:        BSD3
 license-file:   LICENSE
 author:         Manuel Chakravarty, Gabriele Keller, Roman Leshchinskiy, Don Stewart
@@ -72,6 +72,6 @@
     if flag(safe)
         cpp-options: -DSAFE
 
-    if impl(ghc > 6.8.2)
+    if impl(ghc >= 6.10)
         build-depends: ghc-prim
         ghc-options:   -fno-spec-constr-threshold
