diff --git a/hxt.cabal b/hxt.cabal
--- a/hxt.cabal
+++ b/hxt.cabal
@@ -1,6 +1,6 @@
 -- arch-tag: Haskell XML Toolbox main description file
 Name:           hxt
-Version:        9.2.0
+Version:        9.2.1
 Synopsis:       A collection of tools for processing XML with Haskell.
 Description:    The Haskell XML Toolbox bases on the ideas of HaXml and HXML,
                 but introduces a more general approach for processing XML with Haskell.
@@ -15,6 +15,8 @@
                 hxt-curl, hxt-tagsoup, hxt-relaxng, hxt-xpath, hxt-xslt, hxt-regex-xmlschema contain the extensions.
                 hxt-unicode contains encoding and decoding functions,
                 hxt-charproperties char properties for unicode and XML.
+                .
+                Changes to 9.2.0: New warnings from ghc-7.4 removed
 License:        MIT
 License-file:   LICENSE
 Author:         Uwe Schmidt, Martin Schmidt, Torben Kuseler
@@ -22,7 +24,7 @@
 Stability:      Stable
 Category:       XML
 Homepage:       http://www.fh-wedel.de/~si/HXmlToolbox/index.html
-Copyright:      Copyright (c) 2005-2010 Uwe Schmidt
+Copyright:      Copyright (c) 2005-2012 Uwe Schmidt
 Build-type:     Simple
 Cabal-version:  >=1.6
 
diff --git a/src/Text/XML/HXT/Arrow/DocumentOutput.hs b/src/Text/XML/HXT/Arrow/DocumentOutput.hs
--- a/src/Text/XML/HXT/Arrow/DocumentOutput.hs
+++ b/src/Text/XML/HXT/Arrow/DocumentOutput.hs
@@ -30,6 +30,7 @@
 import Control.Arrow.ArrowTree
 import Control.Arrow.ArrowIO
 import Control.Arrow.ListArrow
+import Control.Arrow.ArrowExc
 
 import qualified
        Data.ByteString.Lazy                     as BS
@@ -62,7 +63,6 @@
                                                 , hClose
                                                 , stdout
                                                 )
-import System.IO.Error                          ( try )
 
 -- ------------------------------------------------------------
 --
@@ -79,16 +79,15 @@
           = ( if textMode
               then ( xshow getChildren
                      >>>
-                     arrIO (\ s -> try ( hPutDocument (\h -> hPutStrLn h s)))
+                     tryA (arrIO (\ s -> hPutDocument (\h -> hPutStrLn h s)))
                    )
               else ( xshowBlob getChildren
                      >>>
-                     arrIO (\ s -> try ( hPutDocument (\h -> do
-                                                             BS.hPutStr h s
-                                                             BS.hPutStr h (stringToBlob "\n")
+                     tryA (arrIO (\ s -> hPutDocument (\h -> do BS.hPutStr h s
+                                                                BS.hPutStr h (stringToBlob "\n")
                                                       )
-                                       )
-                           )
+                                 )
+                          )
                    )
             )
             >>>
diff --git a/src/Text/XML/HXT/Arrow/Pickle.hs b/src/Text/XML/HXT/Arrow/Pickle.hs
--- a/src/Text/XML/HXT/Arrow/Pickle.hs
+++ b/src/Text/XML/HXT/Arrow/Pickle.hs
@@ -93,6 +93,8 @@
     , xpElem
     , xpElemNS
     , xpElemWithAttrValue
+    , xpFilterAttr
+    , xpFilterCont
     , xpickle
     , xpInt
     , xpLift
@@ -105,6 +107,7 @@
     , xpPair
     , xpPrim
     , xpSeq
+    , xpSeq'
     , xpText
     , xpText0
     , xpTextDT
diff --git a/src/Text/XML/HXT/Arrow/Pickle/Xml.hs b/src/Text/XML/HXT/Arrow/Pickle/Xml.hs
--- a/src/Text/XML/HXT/Arrow/Pickle/Xml.hs
+++ b/src/Text/XML/HXT/Arrow/Pickle/Xml.hs
@@ -50,7 +50,7 @@
 
 import           Control.Arrow.ArrowList
 import           Control.Arrow.ListArrows
-import           Control.Monad
+import           Control.Monad                    ( )
 import           Control.Monad.Error
 import           Control.Monad.State
 
diff --git a/src/Text/XML/HXT/IO/GetFILE.hs b/src/Text/XML/HXT/IO/GetFILE.hs
--- a/src/Text/XML/HXT/IO/GetFILE.hs
+++ b/src/Text/XML/HXT/IO/GetFILE.hs
@@ -22,15 +22,14 @@
 
 where
 
-import qualified Data.ByteString.Lazy           as B
+import           Control.Exception      ( try )
 
+import qualified Data.ByteString.Lazy   as B
+
 import           Network.URI            ( unEscapeString
                                         )
-
 import           System.IO.Error        ( ioeGetErrorString
-                                        , try
                                         )
-
 import           System.Directory       ( doesFileExist
                                         , getPermissions
                                         , readable
