diff --git a/XMonad/Core.hs b/XMonad/Core.hs
index 1b7b70a..aedf7cc 100644
--- a/XMonad/Core.hs
+++ b/XMonad/Core.hs
@@ -33,7 +33,7 @@ module XMonad.Core (
import XMonad.StackSet hiding (modify)
import Prelude hiding ( catch )
-import Control.Exception (catch, try, bracket, throw, finally, Exception(ExitException))
+import Control.OldException (catch, try, bracket, throw, finally, Exception(ExitException))
import Control.Applicative
import Control.Monad.State
import Control.Monad.Reader
diff --git a/XMonad/ManageHook.hs b/XMonad/ManageHook.hs
index be9bc58..c5674c0 100644
--- a/XMonad/ManageHook.hs
+++ b/XMonad/ManageHook.hs
@@ -22,7 +22,7 @@ import Prelude hiding (catch)
import XMonad.Core
import Graphics.X11.Xlib.Extras
import Graphics.X11.Xlib (Display, Window, internAtom, wM_NAME)
-import Control.Exception (bracket, catch)
+import Control.OldException (bracket, catch)
import Control.Monad.Reader
import Data.Maybe
import Data.Monoid
diff --git a/XMonad/Operations.hs b/XMonad/Operations.hs
index fe124f3..5c8c898 100644
--- a/XMonad/Operations.hs
+++ b/XMonad/Operations.hs
@@ -33,7 +33,7 @@ import qualified Data.Set as S
import Control.Applicative
import Control.Monad.Reader
import Control.Monad.State
-import qualified Control.Exception as C
+import qualified Control.OldException as C
import System.IO
import System.Posix.Process (executeFile)
diff --git a/xmonad.cabal b/xmonad.cabal
index 420050b..a97e187 100644
--- a/xmonad.cabal
+++ b/xmonad.cabal
@@ -43,7 +43,7 @@ library
XMonad.StackSet
if flag(small_base)
- build-depends: base < 4 && >=3, containers, directory, process, filepath
+ build-depends: base < 5 && >=4, containers, directory, process, filepath
else
build-depends: base < 3
build-depends: X11>=1.5.0.0 && < 1.6, mtl, unix