summaryrefslogtreecommitdiff
path: root/compiler/simplCore/Simplify.hs
diff options
context:
space:
mode:
authorSimon Peyton Jones <simonpj@microsoft.com>2015-07-08 17:39:21 +0100
committerSimon Peyton Jones <simonpj@microsoft.com>2015-07-08 17:39:21 +0100
commit9e4908b64648416b9ffb95eca88db7c2a596fe46 (patch)
tree8377292b992c58f1b98e0da21c741da8997964ed /compiler/simplCore/Simplify.hs
parentdde2095916c670f318ee8328cfe2f20adff8f4e6 (diff)
downloadhaskell-wip/T10527-2.tar.gz
Add an ambient Id substitution to Substwip/T10527-2
After a struggle, I fixed Trac #5113 (again) on the 7.10 branch, by adding an ambient substitution to Subst; see CoreSubst, esp Note [IdSubstEnv]. This allowed me to do the impedence-matching in SimplEnv.substExpr efficiently (fixing #10370) as well correctly (fixing the latest problem with #5113). This cost me more time than I like to say. Sigh.
Diffstat (limited to 'compiler/simplCore/Simplify.hs')
-rw-r--r--compiler/simplCore/Simplify.hs2
1 files changed, 1 insertions, 1 deletions
diff --git a/compiler/simplCore/Simplify.hs b/compiler/simplCore/Simplify.hs
index 2e1dcefbdb..40a68d4e6c 100644
--- a/compiler/simplCore/Simplify.hs
+++ b/compiler/simplCore/Simplify.hs
@@ -1179,7 +1179,7 @@ simplCast env body co0 cont0
-- But it isn't a common case.
--
-- Example of use: Trac #995
- = do { let arg' = substExprS arg_se arg
+ = do { let arg' = substExpr arg_se arg
-- It's important that this is lazy, because this argument
-- may be disarded if turns out to be the argument of
-- (\_ -> e) This can make a huge difference;