summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsimonpj <unknown>2001-07-25 10:49:46 +0000
committersimonpj <unknown>2001-07-25 10:49:46 +0000
commit0338d7e232f362bc8b6404b758475de9ef677221 (patch)
treee460b2edcd63273ac854946bcb3c2ed0bbe6d540
parent7d34d68cf6ef26f7f402e8ccf317b69aecf69418 (diff)
downloadhaskell-0338d7e232f362bc8b6404b758475de9ef677221.tar.gz
[project @ 2001-07-25 10:49:46 by simonpj]
Do for evalStrictness the same as for evalAbsence
-rw-r--r--ghc/compiler/stranal/SaAbsInt.lhs10
1 files changed, 7 insertions, 3 deletions
diff --git a/ghc/compiler/stranal/SaAbsInt.lhs b/ghc/compiler/stranal/SaAbsInt.lhs
index 192dc8ad03..8cab167cd4 100644
--- a/ghc/compiler/stranal/SaAbsInt.lhs
+++ b/ghc/compiler/stranal/SaAbsInt.lhs
@@ -293,8 +293,12 @@ evalStrictness (WwUnpack _ demand_info) val
= case val of
AbsTop -> False
AbsBot -> True
- AbsProd vals -> or (zipWithEqual "evalStrictness" evalStrictness demand_info vals)
- _ -> pprTrace "evalStrictness?" empty False
+ AbsProd vals
+ | length vals /= length demand_info -> pprTrace "TELL SIMON: evalStrictness" (ppr demand_info $$ ppr val)
+ False
+ | otherwise -> or (zipWithEqual "evalStrictness" evalStrictness demand_info vals)
+
+ _ -> pprTrace "evalStrictness?" empty False
evalStrictness WwPrim val
= case val of
@@ -319,7 +323,7 @@ evalAbsence (WwUnpack _ demand_info) val
AbsTop -> False -- No poison in here
AbsBot -> True -- Pure poison
AbsProd vals
- | length vals /= length demand_info -> pprTrace "evalAbsence" (ppr demand_info $$ ppr val)
+ | length vals /= length demand_info -> pprTrace "TELL SIMON: evalAbsence" (ppr demand_info $$ ppr val)
True
| otherwise -> or (zipWithEqual "evalAbsence" evalAbsence demand_info vals)
_ -> panic "evalAbsence: other"