From f87738df20fa6531ef1680b79ca777d58dbc2fe4 Mon Sep 17 00:00:00 2001 From: Herbert Valerio Riedel <hvr@gnu.org> Date: Thu, 22 Sep 2016 07:33:07 +0200 Subject: [PATCH] Update default-language & avoid default-extensions (#3880) This upgrades the `default-language: Haskell98` to `Haskell2010` and removes `default-extensions: RankNTypes, FlexibleContexts` in favor of adding `LANGUAGE` pragmas where needed. Moroever, this also drops `LANGUAGE` pragmas which have become redundant due to `Haskell2010` (specifically, `EmptyDataDecls`, `ForeignFunctionInterface` and `PatternGuards`) Finally, an `other-extensions` specification is put in place for the `Cabal` library component. This helps loading up files directly in GHCi, such as e.g. `ghci Setup.hs` without having to specify `-X...` flags. --- Cabal/Cabal.cabal | 36 ++++++++++++++++--- Cabal/Distribution/Compat/CreatePipe.hs | 4 ++- Cabal/Distribution/Compat/Environment.hs | 3 +- Cabal/Distribution/Compat/GetShortPathName.hs | 2 +- Cabal/Distribution/Compat/Prelude.hs | 2 ++ Cabal/Distribution/Compat/Stack.hs | 2 +- Cabal/Distribution/Compat/Time.hs | 7 +++- Cabal/Distribution/Lex.hs | 1 - Cabal/Distribution/Make.hs | 3 ++ .../PackageDescription/Configuration.hs | 1 - .../Distribution/PackageDescription/Parse.hs | 3 ++ Cabal/Distribution/Simple.hs | 3 ++ Cabal/Distribution/Simple/Bench.hs | 3 ++ Cabal/Distribution/Simple/Build.hs | 3 ++ Cabal/Distribution/Simple/BuildTarget.hs | 3 ++ Cabal/Distribution/Simple/Command.hs | 3 ++ Cabal/Distribution/Simple/Configure.hs | 3 +- Cabal/Distribution/Simple/GHC.hs | 3 +- Cabal/Distribution/Simple/GHC/Internal.hs | 4 ++- Cabal/Distribution/Simple/GHCJS.hs | 4 ++- Cabal/Distribution/Simple/Haddock.hs | 2 ++ Cabal/Distribution/Simple/HaskellSuite.hs | 3 ++ Cabal/Distribution/Simple/Hpc.hs | 3 ++ Cabal/Distribution/Simple/Install.hs | 3 ++ Cabal/Distribution/Simple/InstallDirs.hs | 3 +- Cabal/Distribution/Simple/JHC.hs | 3 ++ Cabal/Distribution/Simple/LHC.hs | 3 ++ Cabal/Distribution/Simple/LocalBuildInfo.hs | 3 +- Cabal/Distribution/Simple/PreProcess.hs | 3 ++ Cabal/Distribution/Simple/Program.hs | 3 ++ Cabal/Distribution/Simple/Program/Ar.hs | 3 ++ Cabal/Distribution/Simple/Program/Db.hs | 3 ++ Cabal/Distribution/Simple/Program/Find.hs | 5 ++- Cabal/Distribution/Simple/Program/GHC.hs | 2 ++ Cabal/Distribution/Simple/Program/HcPkg.hs | 3 ++ Cabal/Distribution/Simple/Program/Hpc.hs | 3 ++ Cabal/Distribution/Simple/Program/Ld.hs | 3 ++ Cabal/Distribution/Simple/Program/Run.hs | 3 ++ Cabal/Distribution/Simple/Program/Strip.hs | 3 ++ Cabal/Distribution/Simple/Program/Types.hs | 2 ++ Cabal/Distribution/Simple/Register.hs | 4 ++- Cabal/Distribution/Simple/Setup.hs | 2 ++ Cabal/Distribution/Simple/SrcDist.hs | 3 ++ Cabal/Distribution/Simple/Test.hs | 3 ++ Cabal/Distribution/Simple/Test/ExeV10.hs | 3 ++ Cabal/Distribution/Simple/Test/LibV09.hs | 3 ++ Cabal/Distribution/Simple/Test/Log.hs | 3 ++ Cabal/Distribution/Simple/UHC.hs | 3 ++ Cabal/Distribution/Simple/UserHooks.hs | 3 ++ Cabal/Distribution/Simple/Utils.hs | 5 +-- Cabal/Distribution/TestSuite.hs | 3 ++ Cabal/Distribution/Types/LocalBuildInfo.hs | 3 +- .../Distribution/Types/PackageDescription.hs | 2 ++ 53 files changed, 170 insertions(+), 22 deletions(-) diff --git a/Cabal/Cabal.cabal b/Cabal/Cabal.cabal index f1b5111750..c3f1329057 100644 --- a/Cabal/Cabal.cabal +++ b/Cabal/Cabal.cabal @@ -432,8 +432,36 @@ library Distribution.Compat.Binary.Class Distribution.Compat.Binary.Generic - default-language: Haskell98 - default-extensions: Rank2Types, FlexibleContexts + default-language: Haskell2010 + other-extensions: + BangPatterns + CPP + DefaultSignatures + DeriveDataTypeable + DeriveFoldable + DeriveFunctor + DeriveGeneric + DeriveTraversable + ExistentialQuantification + FlexibleContexts + FlexibleInstances + GeneralizedNewtypeDeriving + ImplicitParams + KindSignatures + NondecreasingIndentation + OverloadedStrings + RankNTypes + RecordWildCards + ScopedTypeVariables + StandaloneDeriving + Trustworthy + TypeFamilies + TypeOperators + TypeSynonymInstances + UndecidableInstances + + if impl(ghc >= 7.11) + other-extensions: PatternSynonyms -- Small, fast running tests. test-suite unit-tests @@ -466,7 +494,7 @@ test-suite unit-tests QuickCheck >= 2.7 && < 2.10, Cabal ghc-options: -Wall - default-language: Haskell98 + default-language: Haskell2010 -- Large, system tests that build packages. test-suite package-tests @@ -501,4 +529,4 @@ test-suite package-tests build-depends: unix, exceptions ghc-options: -Wall -rtsopts default-extensions: CPP - default-language: Haskell98 + default-language: Haskell2010 diff --git a/Cabal/Distribution/Compat/CreatePipe.hs b/Cabal/Distribution/Compat/CreatePipe.hs index d159bb2bfb..bfda07c4a1 100644 --- a/Cabal/Distribution/Compat/CreatePipe.hs +++ b/Cabal/Distribution/Compat/CreatePipe.hs @@ -1,4 +1,6 @@ -{-# LANGUAGE CPP, ForeignFunctionInterface #-} +{-# LANGUAGE CPP #-} +{-# LANGUAGE FlexibleContexts #-} + module Distribution.Compat.CreatePipe (createPipe) where import System.IO (Handle, hSetEncoding, localeEncoding) diff --git a/Cabal/Distribution/Compat/Environment.hs b/Cabal/Distribution/Compat/Environment.hs index 6f0b99d386..014fad7a87 100644 --- a/Cabal/Distribution/Compat/Environment.hs +++ b/Cabal/Distribution/Compat/Environment.hs @@ -1,5 +1,6 @@ {-# LANGUAGE CPP #-} -{-# LANGUAGE ForeignFunctionInterface #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} {-# OPTIONS_HADDOCK hide #-} module Distribution.Compat.Environment diff --git a/Cabal/Distribution/Compat/GetShortPathName.hs b/Cabal/Distribution/Compat/GetShortPathName.hs index f2a7d6a93f..eebad98f94 100644 --- a/Cabal/Distribution/Compat/GetShortPathName.hs +++ b/Cabal/Distribution/Compat/GetShortPathName.hs @@ -1,4 +1,4 @@ -{-# LANGUAGE CPP, ForeignFunctionInterface #-} +{-# LANGUAGE CPP #-} ----------------------------------------------------------------------------- -- | diff --git a/Cabal/Distribution/Compat/Prelude.hs b/Cabal/Distribution/Compat/Prelude.hs index 235c4fdfa9..03889d3432 100644 --- a/Cabal/Distribution/Compat/Prelude.hs +++ b/Cabal/Distribution/Compat/Prelude.hs @@ -1,5 +1,7 @@ {-# LANGUAGE CPP #-} {-# LANGUAGE TypeOperators #-} +{-# LANGUAGE RankNTypes #-} +{-# LANGUAGE FlexibleContexts #-} #ifdef MIN_VERSION_base #define MINVER_base_48 MIN_VERSION_base(4,8,0) diff --git a/Cabal/Distribution/Compat/Stack.hs b/Cabal/Distribution/Compat/Stack.hs index cbc2b9260a..98e8159982 100644 --- a/Cabal/Distribution/Compat/Stack.hs +++ b/Cabal/Distribution/Compat/Stack.hs @@ -1,5 +1,5 @@ {-# LANGUAGE CPP #-} -{-# LANGUAGE Rank2Types #-} +{-# LANGUAGE RankNTypes #-} {-# LANGUAGE ImplicitParams #-} module Distribution.Compat.Stack ( WithCallStack, diff --git a/Cabal/Distribution/Compat/Time.hs b/Cabal/Distribution/Compat/Time.hs index 6fd51e56c2..45aaf49326 100644 --- a/Cabal/Distribution/Compat/Time.hs +++ b/Cabal/Distribution/Compat/Time.hs @@ -1,4 +1,9 @@ -{-# LANGUAGE CPP, ForeignFunctionInterface, GeneralizedNewtypeDeriving, ScopedTypeVariables #-} +{-# LANGUAGE CPP #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE RankNTypes #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE ScopedTypeVariables #-} + module Distribution.Compat.Time ( ModTime(..) -- Needed for testing , getModTime, getFileAge, getCurTime diff --git a/Cabal/Distribution/Lex.hs b/Cabal/Distribution/Lex.hs index e197098317..f1fe94501a 100644 --- a/Cabal/Distribution/Lex.hs +++ b/Cabal/Distribution/Lex.hs @@ -1,4 +1,3 @@ -{-# LANGUAGE PatternGuards #-} ----------------------------------------------------------------------------- -- | -- Module : Distribution.Lex diff --git a/Cabal/Distribution/Make.hs b/Cabal/Distribution/Make.hs index 9366a5f54d..2362da7e2f 100644 --- a/Cabal/Distribution/Make.hs +++ b/Cabal/Distribution/Make.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Make diff --git a/Cabal/Distribution/PackageDescription/Configuration.hs b/Cabal/Distribution/PackageDescription/Configuration.hs index 2baaab5db0..45589b2dd6 100644 --- a/Cabal/Distribution/PackageDescription/Configuration.hs +++ b/Cabal/Distribution/PackageDescription/Configuration.hs @@ -1,4 +1,3 @@ -{-# LANGUAGE CPP #-} -- -fno-warn-deprecations for use of Map.foldWithKey {-# OPTIONS_GHC -fno-warn-deprecations #-} ----------------------------------------------------------------------------- diff --git a/Cabal/Distribution/PackageDescription/Parse.hs b/Cabal/Distribution/PackageDescription/Parse.hs index 75bdf20753..8881834c2a 100644 --- a/Cabal/Distribution/PackageDescription/Parse.hs +++ b/Cabal/Distribution/PackageDescription/Parse.hs @@ -1,5 +1,8 @@ {-# LANGUAGE CPP #-} {-# LANGUAGE DeriveDataTypeable #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.PackageDescription.Parse diff --git a/Cabal/Distribution/Simple.hs b/Cabal/Distribution/Simple.hs index bee886631e..60fbdf1a3c 100644 --- a/Cabal/Distribution/Simple.hs +++ b/Cabal/Distribution/Simple.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple diff --git a/Cabal/Distribution/Simple/Bench.hs b/Cabal/Distribution/Simple/Bench.hs index 8a5d9b80fd..1bd565343f 100644 --- a/Cabal/Distribution/Simple/Bench.hs +++ b/Cabal/Distribution/Simple/Bench.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.Bench diff --git a/Cabal/Distribution/Simple/Build.hs b/Cabal/Distribution/Simple/Build.hs index 78bac82423..29ca2ed2c0 100644 --- a/Cabal/Distribution/Simple/Build.hs +++ b/Cabal/Distribution/Simple/Build.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.Build diff --git a/Cabal/Distribution/Simple/BuildTarget.hs b/Cabal/Distribution/Simple/BuildTarget.hs index b2dfb012f3..328b3f4333 100644 --- a/Cabal/Distribution/Simple/BuildTarget.hs +++ b/Cabal/Distribution/Simple/BuildTarget.hs @@ -1,4 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Client.BuildTargets diff --git a/Cabal/Distribution/Simple/Command.hs b/Cabal/Distribution/Simple/Command.hs index 725fea9dad..58e7883d56 100644 --- a/Cabal/Distribution/Simple/Command.hs +++ b/Cabal/Distribution/Simple/Command.hs @@ -1,4 +1,7 @@ {-# LANGUAGE ExistentialQuantification #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.Command diff --git a/Cabal/Distribution/Simple/Configure.hs b/Cabal/Distribution/Simple/Configure.hs index 6a2ec8d0a4..d9c38a6fde 100644 --- a/Cabal/Distribution/Simple/Configure.hs +++ b/Cabal/Distribution/Simple/Configure.hs @@ -1,8 +1,9 @@ {-# LANGUAGE DeriveDataTypeable #-} +{-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE RankNTypes #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE ScopedTypeVariables #-} -{-# LANGUAGE PatternGuards #-} ----------------------------------------------------------------------------- -- | diff --git a/Cabal/Distribution/Simple/GHC.hs b/Cabal/Distribution/Simple/GHC.hs index 5bc27e23e5..81d5e4a065 100644 --- a/Cabal/Distribution/Simple/GHC.hs +++ b/Cabal/Distribution/Simple/GHC.hs @@ -1,4 +1,5 @@ -{-# LANGUAGE PatternGuards #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} ----------------------------------------------------------------------------- -- | diff --git a/Cabal/Distribution/Simple/GHC/Internal.hs b/Cabal/Distribution/Simple/GHC/Internal.hs index 5de4a8049f..b5fb844670 100644 --- a/Cabal/Distribution/Simple/GHC/Internal.hs +++ b/Cabal/Distribution/Simple/GHC/Internal.hs @@ -1,4 +1,6 @@ -{-# LANGUAGE PatternGuards #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.GHC.Internal diff --git a/Cabal/Distribution/Simple/GHCJS.hs b/Cabal/Distribution/Simple/GHCJS.hs index f7934fcb92..1577b244a8 100644 --- a/Cabal/Distribution/Simple/GHCJS.hs +++ b/Cabal/Distribution/Simple/GHCJS.hs @@ -1,4 +1,6 @@ -{-# LANGUAGE PatternGuards #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + module Distribution.Simple.GHCJS ( configure, getInstalledPackages, getPackageDBContents, buildLib, buildExe, diff --git a/Cabal/Distribution/Simple/Haddock.hs b/Cabal/Distribution/Simple/Haddock.hs index fac67db6f8..c66346e6f9 100644 --- a/Cabal/Distribution/Simple/Haddock.hs +++ b/Cabal/Distribution/Simple/Haddock.hs @@ -1,4 +1,6 @@ {-# LANGUAGE DeriveGeneric #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} ----------------------------------------------------------------------------- -- | diff --git a/Cabal/Distribution/Simple/HaskellSuite.hs b/Cabal/Distribution/Simple/HaskellSuite.hs index 7edfd1ba44..9107b6ac47 100644 --- a/Cabal/Distribution/Simple/HaskellSuite.hs +++ b/Cabal/Distribution/Simple/HaskellSuite.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + module Distribution.Simple.HaskellSuite where import Prelude () diff --git a/Cabal/Distribution/Simple/Hpc.hs b/Cabal/Distribution/Simple/Hpc.hs index 5eb52f681e..f1ae33390d 100644 --- a/Cabal/Distribution/Simple/Hpc.hs +++ b/Cabal/Distribution/Simple/Hpc.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.Hpc diff --git a/Cabal/Distribution/Simple/Install.hs b/Cabal/Distribution/Simple/Install.hs index a240c958db..77f0c9e80a 100644 --- a/Cabal/Distribution/Simple/Install.hs +++ b/Cabal/Distribution/Simple/Install.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.Install diff --git a/Cabal/Distribution/Simple/InstallDirs.hs b/Cabal/Distribution/Simple/InstallDirs.hs index 610dd246e3..e3df56e2b8 100644 --- a/Cabal/Distribution/Simple/InstallDirs.hs +++ b/Cabal/Distribution/Simple/InstallDirs.hs @@ -1,7 +1,8 @@ {-# LANGUAGE CPP #-} -{-# LANGUAGE ForeignFunctionInterface #-} {-# LANGUAGE DeriveFunctor #-} {-# LANGUAGE DeriveGeneric #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} ----------------------------------------------------------------------------- -- | diff --git a/Cabal/Distribution/Simple/JHC.hs b/Cabal/Distribution/Simple/JHC.hs index 99f7f5a9fd..aa8388da34 100644 --- a/Cabal/Distribution/Simple/JHC.hs +++ b/Cabal/Distribution/Simple/JHC.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.JHC diff --git a/Cabal/Distribution/Simple/LHC.hs b/Cabal/Distribution/Simple/LHC.hs index e3ee9c290f..d709345b0a 100644 --- a/Cabal/Distribution/Simple/LHC.hs +++ b/Cabal/Distribution/Simple/LHC.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.LHC diff --git a/Cabal/Distribution/Simple/LocalBuildInfo.hs b/Cabal/Distribution/Simple/LocalBuildInfo.hs index cb4597dc9f..d713d5f674 100644 --- a/Cabal/Distribution/Simple/LocalBuildInfo.hs +++ b/Cabal/Distribution/Simple/LocalBuildInfo.hs @@ -1,5 +1,6 @@ {-# LANGUAGE DeriveGeneric #-} -{-# LANGUAGE PatternGuards #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} ----------------------------------------------------------------------------- -- | diff --git a/Cabal/Distribution/Simple/PreProcess.hs b/Cabal/Distribution/Simple/PreProcess.hs index 1dc74f41bc..2b4f9804a6 100644 --- a/Cabal/Distribution/Simple/PreProcess.hs +++ b/Cabal/Distribution/Simple/PreProcess.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.PreProcess diff --git a/Cabal/Distribution/Simple/Program.hs b/Cabal/Distribution/Simple/Program.hs index 5c3eec8dea..aafa4aa9f0 100644 --- a/Cabal/Distribution/Simple/Program.hs +++ b/Cabal/Distribution/Simple/Program.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.Program diff --git a/Cabal/Distribution/Simple/Program/Ar.hs b/Cabal/Distribution/Simple/Program/Ar.hs index 21aa347a12..11650dc2fa 100644 --- a/Cabal/Distribution/Simple/Program/Ar.hs +++ b/Cabal/Distribution/Simple/Program/Ar.hs @@ -1,4 +1,7 @@ +{-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE RankNTypes #-} +{-# LANGUAGE NondecreasingIndentation #-} ----------------------------------------------------------------------------- -- | diff --git a/Cabal/Distribution/Simple/Program/Db.hs b/Cabal/Distribution/Simple/Program/Db.hs index 388621d847..a7860857bc 100644 --- a/Cabal/Distribution/Simple/Program/Db.hs +++ b/Cabal/Distribution/Simple/Program/Db.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.Program.Db diff --git a/Cabal/Distribution/Simple/Program/Find.hs b/Cabal/Distribution/Simple/Program/Find.hs index 2f3035b5fe..d6553aa8e8 100644 --- a/Cabal/Distribution/Simple/Program/Find.hs +++ b/Cabal/Distribution/Simple/Program/Find.hs @@ -1,4 +1,7 @@ -{-# LANGUAGE CPP, DeriveGeneric #-} +{-# LANGUAGE CPP #-} +{-# LANGUAGE DeriveGeneric #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} ----------------------------------------------------------------------------- -- | diff --git a/Cabal/Distribution/Simple/Program/GHC.hs b/Cabal/Distribution/Simple/Program/GHC.hs index b4d58dc7fd..9b73903872 100644 --- a/Cabal/Distribution/Simple/Program/GHC.hs +++ b/Cabal/Distribution/Simple/Program/GHC.hs @@ -1,4 +1,6 @@ {-# LANGUAGE DeriveGeneric #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} module Distribution.Simple.Program.GHC ( GhcOptions(..), diff --git a/Cabal/Distribution/Simple/Program/HcPkg.hs b/Cabal/Distribution/Simple/Program/HcPkg.hs index 5e45614792..24995802d8 100644 --- a/Cabal/Distribution/Simple/Program/HcPkg.hs +++ b/Cabal/Distribution/Simple/Program/HcPkg.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.Program.HcPkg diff --git a/Cabal/Distribution/Simple/Program/Hpc.hs b/Cabal/Distribution/Simple/Program/Hpc.hs index 38a24fcb21..6ed401c725 100644 --- a/Cabal/Distribution/Simple/Program/Hpc.hs +++ b/Cabal/Distribution/Simple/Program/Hpc.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.Program.Hpc diff --git a/Cabal/Distribution/Simple/Program/Ld.hs b/Cabal/Distribution/Simple/Program/Ld.hs index 4f1922e350..323522a753 100644 --- a/Cabal/Distribution/Simple/Program/Ld.hs +++ b/Cabal/Distribution/Simple/Program/Ld.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.Program.Ld diff --git a/Cabal/Distribution/Simple/Program/Run.hs b/Cabal/Distribution/Simple/Program/Run.hs index ab3c645a39..55f799965a 100644 --- a/Cabal/Distribution/Simple/Program/Run.hs +++ b/Cabal/Distribution/Simple/Program/Run.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.Program.Run diff --git a/Cabal/Distribution/Simple/Program/Strip.hs b/Cabal/Distribution/Simple/Program/Strip.hs index 43aafe5dd8..890321c81d 100644 --- a/Cabal/Distribution/Simple/Program/Strip.hs +++ b/Cabal/Distribution/Simple/Program/Strip.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.Program.Strip diff --git a/Cabal/Distribution/Simple/Program/Types.hs b/Cabal/Distribution/Simple/Program/Types.hs index 9a196f6563..737cc35d00 100644 --- a/Cabal/Distribution/Simple/Program/Types.hs +++ b/Cabal/Distribution/Simple/Program/Types.hs @@ -1,4 +1,6 @@ {-# LANGUAGE DeriveGeneric #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} ----------------------------------------------------------------------------- -- | diff --git a/Cabal/Distribution/Simple/Register.hs b/Cabal/Distribution/Simple/Register.hs index a92c5a818f..3814ac5ceb 100644 --- a/Cabal/Distribution/Simple/Register.hs +++ b/Cabal/Distribution/Simple/Register.hs @@ -1,4 +1,6 @@ -{-# LANGUAGE PatternGuards #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.Register diff --git a/Cabal/Distribution/Simple/Setup.hs b/Cabal/Distribution/Simple/Setup.hs index fb5397125a..f5f8d52862 100644 --- a/Cabal/Distribution/Simple/Setup.hs +++ b/Cabal/Distribution/Simple/Setup.hs @@ -1,5 +1,7 @@ {-# LANGUAGE CPP #-} {-# LANGUAGE DeriveGeneric #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} ----------------------------------------------------------------------------- -- | diff --git a/Cabal/Distribution/Simple/SrcDist.hs b/Cabal/Distribution/Simple/SrcDist.hs index 3b97f53afb..2efe08cc96 100644 --- a/Cabal/Distribution/Simple/SrcDist.hs +++ b/Cabal/Distribution/Simple/SrcDist.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.SrcDist diff --git a/Cabal/Distribution/Simple/Test.hs b/Cabal/Distribution/Simple/Test.hs index 65e23c852e..e460af34dc 100644 --- a/Cabal/Distribution/Simple/Test.hs +++ b/Cabal/Distribution/Simple/Test.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.Test diff --git a/Cabal/Distribution/Simple/Test/ExeV10.hs b/Cabal/Distribution/Simple/Test/ExeV10.hs index f358a8b7df..b3509caf7c 100644 --- a/Cabal/Distribution/Simple/Test/ExeV10.hs +++ b/Cabal/Distribution/Simple/Test/ExeV10.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + module Distribution.Simple.Test.ExeV10 ( runTest ) where diff --git a/Cabal/Distribution/Simple/Test/LibV09.hs b/Cabal/Distribution/Simple/Test/LibV09.hs index c820c6f56a..95b44582b5 100644 --- a/Cabal/Distribution/Simple/Test/LibV09.hs +++ b/Cabal/Distribution/Simple/Test/LibV09.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + module Distribution.Simple.Test.LibV09 ( runTest -- Test stub diff --git a/Cabal/Distribution/Simple/Test/Log.hs b/Cabal/Distribution/Simple/Test/Log.hs index 0065dc3692..ef14020ba8 100644 --- a/Cabal/Distribution/Simple/Test/Log.hs +++ b/Cabal/Distribution/Simple/Test/Log.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + module Distribution.Simple.Test.Log ( PackageLog(..) , TestLogs(..) diff --git a/Cabal/Distribution/Simple/UHC.hs b/Cabal/Distribution/Simple/UHC.hs index 2ad6c47cd5..7a59fef8b8 100644 --- a/Cabal/Distribution/Simple/UHC.hs +++ b/Cabal/Distribution/Simple/UHC.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.UHC diff --git a/Cabal/Distribution/Simple/UserHooks.hs b/Cabal/Distribution/Simple/UserHooks.hs index b3ba6cf9b9..28457b66be 100644 --- a/Cabal/Distribution/Simple/UserHooks.hs +++ b/Cabal/Distribution/Simple/UserHooks.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.UserHooks diff --git a/Cabal/Distribution/Simple/Utils.hs b/Cabal/Distribution/Simple/Utils.hs index fdf704c938..41febe3a1c 100644 --- a/Cabal/Distribution/Simple/Utils.hs +++ b/Cabal/Distribution/Simple/Utils.hs @@ -1,6 +1,7 @@ -{-# LANGUAGE CPP, ForeignFunctionInterface, ScopedTypeVariables #-} +{-# LANGUAGE CPP #-} +{-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE FlexibleContexts #-} -{-# LANGUAGE Rank2Types #-} +{-# LANGUAGE RankNTypes #-} ----------------------------------------------------------------------------- -- | -- Module : Distribution.Simple.Utils diff --git a/Cabal/Distribution/TestSuite.hs b/Cabal/Distribution/TestSuite.hs index 411265f9f8..7276bfa2c3 100644 --- a/Cabal/Distribution/TestSuite.hs +++ b/Cabal/Distribution/TestSuite.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} + ----------------------------------------------------------------------------- -- | -- Module : Distribution.TestSuite diff --git a/Cabal/Distribution/Types/LocalBuildInfo.hs b/Cabal/Distribution/Types/LocalBuildInfo.hs index abd1757fa0..60a8e99a28 100644 --- a/Cabal/Distribution/Types/LocalBuildInfo.hs +++ b/Cabal/Distribution/Types/LocalBuildInfo.hs @@ -1,5 +1,6 @@ {-# LANGUAGE DeriveGeneric #-} -{-# LANGUAGE PatternGuards #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} module Distribution.Types.LocalBuildInfo ( -- * The type diff --git a/Cabal/Distribution/Types/PackageDescription.hs b/Cabal/Distribution/Types/PackageDescription.hs index 959154c1b2..5404395525 100644 --- a/Cabal/Distribution/Types/PackageDescription.hs +++ b/Cabal/Distribution/Types/PackageDescription.hs @@ -1,5 +1,7 @@ {-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE DeriveGeneric #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE RankNTypes #-} ----------------------------------------------------------------------------- -- | -- GitLab