[commit: ghc] master: Fix typo in SpecConstr that made it not work at all (2a130b1)
Simon Marlow
marlowsd at gmail.com
Thu Feb 3 21:39:26 CET 2011
Repository : ssh://darcs.haskell.org//srv/darcs/ghc
On branch : master
http://hackage.haskell.org/trac/ghc/changeset/2a130b134daa3d67fed0b5b2e2257446e2c23c76
>---------------------------------------------------------------
commit 2a130b134daa3d67fed0b5b2e2257446e2c23c76
Author: simonpj at microsoft.com <unknown>
Date: Thu Feb 3 17:27:56 2011 +0000
Fix typo in SpecConstr that made it not work at all
There was a terrible typo in this patch; I wrote "env"
instead of "env1".
Mon Jan 31 11:35:29 GMT 2011 simonpj at microsoft.com
* Improve Simplifier and SpecConstr behaviour
Anyway, this fix is essential to make it work properly.
Thanks to Max for spotting the problem (again).
>---------------------------------------------------------------
compiler/specialise/SpecConstr.lhs | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/compiler/specialise/SpecConstr.lhs b/compiler/specialise/SpecConstr.lhs
index 8e08169..8235196 100644
--- a/compiler/specialise/SpecConstr.lhs
+++ b/compiler/specialise/SpecConstr.lhs
@@ -749,7 +749,7 @@ extendCaseBndrs env scrut case_bndr con alt_bndrs
live_case_bndr = not (isDeadBinder case_bndr)
env1 | Var v <- scrut = extendValEnv env v cval
| otherwise = env -- See Note [Add scrutinee to ValueEnv too]
- env2 | live_case_bndr = extendValEnv env case_bndr cval
+ env2 | live_case_bndr = extendValEnv env1 case_bndr cval
| otherwise = env1
alt_bndrs' | case scrut of { Var {} -> True; _ -> live_case_bndr }
More information about the Cvs-ghc
mailing list