In this code:

```
import System.Posix.Files
import Control.Exception

safeStat :: FilePath -> IO (Maybe FileStatus)
safeStat path =
  handle (\_ -> return Nothing) (getFileStatus path >>= (return . Just))

```

I'm getting this error (in ghci):

```
Ambiguous type variable `e0' in the constraint:
  (Exception e0) arising from a use of `handle'
...

```

I can get rid of the error by doding something like:

```
nothing :: IOException -> Maybe a
nothing _ = Nothing

safeStat :: FilePath -> IO (Maybe FileStatus)
safeStat path =
  handle (return . nothing) (getFileStatus path >>= (return . Just))

```

What's going on??? I'd like the hander to handle *any* exception.