diff --git a/pugs-compat.cabal b/pugs-compat.cabal
--- a/pugs-compat.cabal
+++ b/pugs-compat.cabal
@@ -1,5 +1,5 @@
 Name           : pugs-compat
-Version        : 0.0.6.20130209.0
+Version        : 0.0.6.20130611.0
 Build-type     : Simple
 Category       : Pugs
 License        : PublicDomain
@@ -9,7 +9,7 @@
 Description    : Portable Haskell/POSIX layer for Pugs
 Cabal-Version  : >=1.2.3
 
-Tested-With:       GHC==6.8.2, GHC==6.8.3, GHC==6.10.1, GHC==6.12.1, GHC==7.4.1
+Tested-With:       GHC==7.6.3
 
 Library
   Extensions      : CPP, MagicHash, ScopedTypeVariables, MultiParamTypeClasses,
diff --git a/src/Pugs/Compat/Posix.hs b/src/Pugs/Compat/Posix.hs
--- a/src/Pugs/Compat/Posix.hs
+++ b/src/Pugs/Compat/Posix.hs
@@ -54,6 +54,7 @@
 import System.Cmd
 import System.Posix.Types
 import Data.Time
+import Control.Exception
 
 #ifdef PUGS_HAVE_POSIX
 import System.Posix.Files
@@ -75,7 +76,10 @@
 doesExist = fileExist
 
 testStatusWith :: (FileStatus -> Bool) -> FilePath -> IO Bool
-testStatusWith t f = fmap t (getFileStatus f) `catch` const (return False)
+testStatusWith t f = fmap t (getFileStatus f) `catch` false
+    where
+        false :: SomeException -> IO Bool
+        false = const (return False)
 
 doesFileExist :: FilePath -> IO Bool
 doesFileExist = testStatusWith isRegularFile
