summaryrefslogtreecommitdiff
path: root/compiler/specialise
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/specialise')
-rw-r--r--compiler/specialise/Rules.hs1
-rw-r--r--compiler/specialise/Specialise.hs3
2 files changed, 3 insertions, 1 deletions
diff --git a/compiler/specialise/Rules.hs b/compiler/specialise/Rules.hs
index 47193c66bc..192b6bb212 100644
--- a/compiler/specialise/Rules.hs
+++ b/compiler/specialise/Rules.hs
@@ -31,6 +31,7 @@ module Rules (
import CoreSyn -- All of it
import Module ( Module, ModuleSet, elemModuleSet )
import CoreSubst
+import CoreOpt ( exprIsLambda_maybe )
import CoreFVs ( exprFreeVars, exprsFreeVars, bindFreeVars
, rulesFreeVarsDSet, exprsOrphNames, exprFreeVarsList )
import CoreUtils ( exprType, eqExpr, mkTick, mkTicks,
diff --git a/compiler/specialise/Specialise.hs b/compiler/specialise/Specialise.hs
index bd1c7aecf0..0dd295d695 100644
--- a/compiler/specialise/Specialise.hs
+++ b/compiler/specialise/Specialise.hs
@@ -21,6 +21,7 @@ import VarSet
import VarEnv
import CoreSyn
import Rules
+import CoreOpt ( collectBindersPushingCo )
import CoreUtils ( exprIsTrivial, applyTypeToArgs, mkCast )
import CoreFVs ( exprFreeVars, exprsFreeVars, idFreeVars, exprsFreeIdsList )
import CoreArity ( etaExpandToJoinPointRule )
@@ -1194,7 +1195,7 @@ specCalls mb_mod env rules_for_me calls_for_me fn rhs
-- Figure out whether the function has an INLINE pragma
-- See Note [Inline specialisations]
- (rhs_bndrs, rhs_body) = CoreSubst.collectBindersPushingCo rhs
+ (rhs_bndrs, rhs_body) = collectBindersPushingCo rhs
-- See Note [Account for casts in binding]
(rhs_tyvars, rhs_bndrs1) = span isTyVar rhs_bndrs
(rhs_dict_ids, rhs_bndrs2) = splitAt n_dicts rhs_bndrs1