summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorgi Lyubenov <georgi.lyubenov@tweag.io>2022-09-08 13:49:11 +0300
committerGeorgi Lyubenov <georgi.lyubenov@tweag.io>2022-09-08 17:14:36 +0300
commita4b34808720e93b434b4fcf18db114bc1f0599aa (patch)
treebefa7dd6a8abd33c7a5794b64558be553c58c3bd
parentf54ff8183a38a92c0ae4e063bc8bd85a33fdc9ff (diff)
downloadhaskell-a4b34808720e93b434b4fcf18db114bc1f0599aa.tar.gz
Isolate some Applicative hidings to GHC.Prelude
By reexporting the entirety of Applicative from GHC.Prelude, we can save ourselves some `hiding` and importing of `Applicative` in consumers of GHC.Prelude. This also has the benefit of isolating this type of change to GHC.Prelude, so that people in the future don't have to think about it.
-rw-r--r--compiler/GHC/Hs/Doc.hs3
-rw-r--r--compiler/GHC/Prelude.hs4
-rw-r--r--compiler/GHC/Types/SrcLoc.hs3
-rw-r--r--compiler/GHC/Utils/Misc.hs3
-rw-r--r--compiler/GHC/Utils/Monad.hs3
5 files changed, 7 insertions, 9 deletions
diff --git a/compiler/GHC/Hs/Doc.hs b/compiler/GHC/Hs/Doc.hs
index 39d477be52..4873eaa367 100644
--- a/compiler/GHC/Hs/Doc.hs
+++ b/compiler/GHC/Hs/Doc.hs
@@ -26,7 +26,7 @@ module GHC.Hs.Doc
, emptyDocs
) where
-import GHC.Prelude hiding (Applicative(..))
+import GHC.Prelude
import GHC.Utils.Binary
import GHC.Types.Name
@@ -38,7 +38,6 @@ import GHC.Types.Avail
import GHC.Types.Name.Set
import GHC.Driver.Flags
-import Control.Applicative (Applicative(..))
import Data.Data
import Data.IntMap (IntMap)
import qualified Data.IntMap as IntMap
diff --git a/compiler/GHC/Prelude.hs b/compiler/GHC/Prelude.hs
index 6a810ac200..0f8740f62d 100644
--- a/compiler/GHC/Prelude.hs
+++ b/compiler/GHC/Prelude.hs
@@ -14,6 +14,7 @@
module GHC.Prelude
(module X
+ ,Applicative (..)
,module Bits
,shiftL, shiftR
) where
@@ -47,7 +48,8 @@ NoImplicitPrelude. There are two motivations for this:
extensions.
-}
-import Prelude as X hiding ((<>))
+import Prelude as X hiding ((<>), Applicative(..))
+import Control.Applicative (Applicative(..))
import Data.Foldable as X (foldl')
#if MIN_VERSION_base(4,16,0)
diff --git a/compiler/GHC/Types/SrcLoc.hs b/compiler/GHC/Types/SrcLoc.hs
index 3f68db0c30..992f94f983 100644
--- a/compiler/GHC/Types/SrcLoc.hs
+++ b/compiler/GHC/Types/SrcLoc.hs
@@ -115,7 +115,7 @@ module GHC.Types.SrcLoc (
) where
-import GHC.Prelude hiding (Applicative(..))
+import GHC.Prelude
import GHC.Utils.Misc
import GHC.Utils.Json
@@ -125,7 +125,6 @@ import GHC.Data.FastString
import qualified GHC.Data.Strict as Strict
import Control.DeepSeq
-import Control.Applicative (Applicative(..))
import Data.Data
import Data.List (sortBy, intercalate)
import Data.Function (on)
diff --git a/compiler/GHC/Utils/Misc.hs b/compiler/GHC/Utils/Misc.hs
index 0ddf057ffc..f09f0034be 100644
--- a/compiler/GHC/Utils/Misc.hs
+++ b/compiler/GHC/Utils/Misc.hs
@@ -127,7 +127,7 @@ module GHC.Utils.Misc (
HasDebugCallStack,
) where
-import GHC.Prelude hiding (Applicative(..))
+import GHC.Prelude
import GHC.Utils.Exception
import GHC.Utils.Panic.Plain
@@ -141,7 +141,6 @@ import Data.List.NonEmpty ( NonEmpty(..) )
import GHC.Exts
import GHC.Stack (HasCallStack)
-import Control.Applicative (Applicative(..))
import Control.Monad ( liftM, guard )
import Control.Monad.IO.Class ( MonadIO, liftIO )
import System.IO.Error as IO ( isDoesNotExistError )
diff --git a/compiler/GHC/Utils/Monad.hs b/compiler/GHC/Utils/Monad.hs
index f9fc02b338..a0cac350fe 100644
--- a/compiler/GHC/Utils/Monad.hs
+++ b/compiler/GHC/Utils/Monad.hs
@@ -27,9 +27,8 @@ module GHC.Utils.Monad
-- Imports
-------------------------------------------------------------------------------
-import GHC.Prelude hiding (Applicative(..))
+import GHC.Prelude
-import Control.Applicative
import Control.Monad
import Control.Monad.Fix
import Control.Monad.IO.Class