diff --git a/ivar-simple.cabal b/ivar-simple.cabal
--- a/ivar-simple.cabal
+++ b/ivar-simple.cabal
@@ -1,8 +1,8 @@
 Name:          ivar-simple
-Version:       0.3
+Version:       0.3.1
 Category:      Concurrency
 Stability:     experimental
-Copyright:     (c) 2008-2012 Bertram Felgenhauer
+Copyright:     (c) 2008-2015 Bertram Felgenhauer
 Maintainer:    Bertram Felgenhauer <int-e@gmx.de>
 License:       MIT
 License-File:  LICENSE
diff --git a/src/Data/IVar/Simple.hs b/src/Data/IVar/Simple.hs
--- a/src/Data/IVar/Simple.hs
+++ b/src/Data/IVar/Simple.hs
@@ -1,7 +1,7 @@
-{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveDataTypeable, CPP #-}
 -- |
 -- Module      : Data.IVar.Simple
--- Copyright   : (c) 2008, 2009 Bertram Felgenhauer
+-- Copyright   : (c) 2008-2015 Bertram Felgenhauer
 -- License     : BSD3
 --
 -- Maintainer  : Bertram Felgenhauer <int-e@gmx.de>
@@ -84,6 +84,10 @@
     case a of
         Just _  -> putMVar trans value >> return True
         Nothing -> return False
+#if __GLASGOW_HASKELL__ >= 708
+  where
+    block = mask_
+#endif
 
 -- | The thread has attempted to write to a full 'IVar'.
 data BlockedIndefinitelyOnIVar = BlockedIndefinitelyOnIVar
