summaryrefslogtreecommitdiff
path: root/compiler/specialise
diff options
context:
space:
mode:
authorHerbert Valerio Riedel <hvr@gnu.org>2017-09-19 14:35:36 -0400
committerBen Gamari <ben@smart-cactus.org>2017-09-19 14:35:38 -0400
commitf63bc730c7ea42ca6882f8078eb86be8bf1cc6ad (patch)
tree3273e53bf00121c2a2657a9fe997283300e997e9 /compiler/specialise
parent12a92fedf8b1997f2e26800929be117d54536b7e (diff)
downloadhaskell-f63bc730c7ea42ca6882f8078eb86be8bf1cc6ad.tar.gz
compiler: introduce custom "GhcPrelude" Prelude
This switches the compiler/ component to get compiled with -XNoImplicitPrelude and a `import GhcPrelude` is inserted in all modules. This is motivated by the upcoming "Prelude" re-export of `Semigroup((<>))` which would cause lots of name clashes in every modulewhich imports also `Outputable` Reviewers: austin, goldfire, bgamari, alanz, simonmar Reviewed By: bgamari Subscribers: goldfire, rwbarton, thomie, mpickering, bgamari Differential Revision: https://phabricator.haskell.org/D3989
Diffstat (limited to 'compiler/specialise')
-rw-r--r--compiler/specialise/Rules.hs2
-rw-r--r--compiler/specialise/SpecConstr.hs2
-rw-r--r--compiler/specialise/Specialise.hs2
3 files changed, 6 insertions, 0 deletions
diff --git a/compiler/specialise/Rules.hs b/compiler/specialise/Rules.hs
index a0f42cd2b5..ec19740d0f 100644
--- a/compiler/specialise/Rules.hs
+++ b/compiler/specialise/Rules.hs
@@ -28,6 +28,8 @@ module Rules (
#include "HsVersions.h"
+import GhcPrelude
+
import CoreSyn -- All of it
import Module ( Module, ModuleSet, elemModuleSet )
import CoreSubst
diff --git a/compiler/specialise/SpecConstr.hs b/compiler/specialise/SpecConstr.hs
index 2b9c20aa19..609e70c0ad 100644
--- a/compiler/specialise/SpecConstr.hs
+++ b/compiler/specialise/SpecConstr.hs
@@ -19,6 +19,8 @@ module SpecConstr(
#include "HsVersions.h"
+import GhcPrelude
+
import CoreSyn
import CoreSubst
import CoreUtils
diff --git a/compiler/specialise/Specialise.hs b/compiler/specialise/Specialise.hs
index 83f1ed78bb..c4fe042b1f 100644
--- a/compiler/specialise/Specialise.hs
+++ b/compiler/specialise/Specialise.hs
@@ -9,6 +9,8 @@ module Specialise ( specProgram, specUnfolding ) where
#include "HsVersions.h"
+import GhcPrelude
+
import Id
import TcType hiding( substTy )
import Type hiding( substTy, extendTvSubstList )