diff --git a/Data/Array/Repa/IO/Binary.hs b/Data/Array/Repa/IO/Binary.hs
--- a/Data/Array/Repa/IO/Binary.hs
+++ b/Data/Array/Repa/IO/Binary.hs
@@ -67,7 +67,7 @@
 --   Data appears in host byte order.
 writeArrayToStorableFile
         :: forall sh a r
-        .  (Shape sh, Repr r a, Storable a)
+        .  (Shape sh, Source r a, Storable a)
         => FilePath 
         -> Array r sh a
         -> IO ()
diff --git a/Data/Array/Repa/IO/Matrix.hs b/Data/Array/Repa/IO/Matrix.hs
--- a/Data/Array/Repa/IO/Matrix.hs
+++ b/Data/Array/Repa/IO/Matrix.hs
@@ -1,4 +1,4 @@
-{-# LANGUAGE PackageImports #-}
+{-# LANGUAGE PackageImports, FlexibleContexts #-}
 -- | Read and write matrices as ASCII text files.
 --
 --   The file format is like:
@@ -49,7 +49,7 @@
 
 -- | Write a matrix as a text file.
 writeMatrixToTextFile 
-	:: (Show e, Repr r e)
+	:: (Show e, Source r e)
 	=> FilePath
 	-> Array r DIM2 e
 	-> IO ()
diff --git a/Data/Array/Repa/IO/Vector.hs b/Data/Array/Repa/IO/Vector.hs
--- a/Data/Array/Repa/IO/Vector.hs
+++ b/Data/Array/Repa/IO/Vector.hs
@@ -1,4 +1,4 @@
-{-# LANGUAGE PackageImports #-}
+{-# LANGUAGE PackageImports, FlexibleContexts #-}
 -- | Read and write vectors as ASCII text files.
 --
 --   The file format is like:
@@ -59,7 +59,7 @@
 	
 -- | Write a vector as a text file.
 writeVectorToTextFile 
-	:: (Show e, Repr r e)
+	:: (Show e, Source r e)
 	=> Array r DIM1 e
 	-> FilePath
 	-> IO ()
diff --git a/repa-io.cabal b/repa-io.cabal
--- a/repa-io.cabal
+++ b/repa-io.cabal
@@ -1,5 +1,5 @@
 Name:                repa-io
-Version:             3.1.3.1
+Version:             3.2.1.1
 License:             BSD3
 License-file:        LICENSE
 Author:              The DPH Team
@@ -19,7 +19,7 @@
 Library
   Build-Depends: 
         base                 == 4.5.*,
-        repa                 == 3.1.*,
+        repa                 == 3.2.*,
         bmp                  == 1.2.*,
         old-time             == 1.1.*,
         vector               == 0.9.*,
