diff --git a/Derive/Flags.hs b/Derive/Flags.hs
--- a/Derive/Flags.hs
+++ b/Derive/Flags.hs
@@ -39,7 +39,7 @@
 getFlags = do
     args <- getArgs
     case getOpt Permute options args of
-        (o,n,[]  ) | Version `elem` o -> putStrLn "Derive 2.4.* (C) Neil Mitchell 2006-2011" >> exitSuccess
+        (o,n,[]  ) | Version `elem` o -> putStrLn "Derive 2.5.* (C) Neil Mitchell 2006-2013" >> exitSuccess
                    | Help `elem` o    -> putStr flagInfo >> exitSuccess
                    | Preprocessor `elem` o -> return (o,n)
                    | otherwise        -> do files <- mapM pickFile n; return (o, files)
diff --git a/Derive/Main.hs b/Derive/Main.hs
--- a/Derive/Main.hs
+++ b/Derive/Main.hs
@@ -35,7 +35,7 @@
 mainFile derivations flags file = do
     src <- readFile file
     src <- return $ unlines $ filter (not . isPrefixOf "#") $ lines src
-    let parse = fromParseResult . parseFileContentsWithMode defaultParseMode{parseFilename=file,extensions=map EnableExtension extension}
+    let parse = fromParseResult . parseFileContentsWithMode defaultParseMode{parseFilename=file,extensions=defaultExtensions}
         real = parse src
         mine = parse $ uncomment src
     flags <- return $ foldl addFlags flags
@@ -52,16 +52,12 @@
 
 
 -- Taken from HLint, update occasionally
-extension =
-    [OverlappingInstances,UndecidableInstances,IncoherentInstances,RecursiveDo
-    ,ParallelListComp,MultiParamTypeClasses,FunctionalDependencies
-    ,Rank2Types,RankNTypes,PolymorphicComponents,ExistentialQuantification,ScopedTypeVariables
-    ,ImplicitParams,FlexibleContexts,FlexibleInstances,EmptyDataDecls
-    ,KindSignatures,BangPatterns,TypeSynonymInstances,TemplateHaskell
-    ,ForeignFunctionInterface,Generics,NamedFieldPuns,PatternGuards
-    ,GeneralizedNewtypeDeriving,ExtensibleRecords,RestrictedTypeSynonyms,HereDocuments
-    ,MagicHash,TypeFamilies,StandaloneDeriving,UnicodeSyntax,PatternSignatures,UnliftedFFITypes
-    ,LiberalTypeSynonyms,TypeOperators,RecordWildCards,RecordPuns,DisambiguateRecordFields
-    ,OverloadedStrings,GADTs,MonoPatBinds,RelaxedPolyRec,ExtendedDefaultRules,UnboxedTuples
-    ,DeriveDataTypeable,ConstrainedClassMethods,PackageImports,ImpredicativeTypes
-    ,NewQualifiedOperators,PostfixOperators,QuasiQuotes,ViewPatterns]
+defaultExtensions :: [Extension]
+defaultExtensions = [e | e@EnableExtension{} <- knownExtensions] \\ map EnableExtension badExtensions
+
+badExtensions =
+    [Arrows -- steals proc
+    ,TransformListComp -- steals the group keyword
+    ,XmlSyntax, RegularPatterns -- steals a-b
+    ]
+
diff --git a/derive.cabal b/derive.cabal
--- a/derive.cabal
+++ b/derive.cabal
@@ -1,7 +1,7 @@
 cabal-version:  >= 1.6
 build-type:     Default
 name:           derive
-version:        2.5.12
+version:        2.5.13
 build-type:     Simple
 copyright:      Neil Mitchell 2006-2013
 author:         Neil Mitchell <ndmitchell@gmail.com>
