summaryrefslogtreecommitdiff
path: root/compiler/stgSyn
diff options
context:
space:
mode:
authorIan Lynagh <igloo@earth.li>2010-10-19 17:05:32 +0000
committerIan Lynagh <igloo@earth.li>2010-10-19 17:05:32 +0000
commit6193ff066266120cd18712e0663dfae36034aa51 (patch)
tree73823af982a6949bb1afa7f26d798fad96790cad /compiler/stgSyn
parenta76b8e2794e1721793e641408d04c2349cc974a7 (diff)
downloadhaskell-6193ff066266120cd18712e0663dfae36034aa51.tar.gz
Evaluate the results in coreToStgApp
Diffstat (limited to 'compiler/stgSyn')
-rw-r--r--compiler/stgSyn/CoreToStg.lhs12
1 files changed, 7 insertions, 5 deletions
diff --git a/compiler/stgSyn/CoreToStg.lhs b/compiler/stgSyn/CoreToStg.lhs
index 54895aa027..b0595ab1ef 100644
--- a/compiler/stgSyn/CoreToStg.lhs
+++ b/compiler/stgSyn/CoreToStg.lhs
@@ -544,13 +544,15 @@ coreToStgApp _ f args = do
TickBoxOpId {} -> pprPanic "coreToStg TickBox" $ ppr (f,args')
_other -> StgApp f args'
-
- return (
- app,
- fun_fvs `unionFVInfo` args_fvs,
- fun_escs `unionVarSet` (getFVSet args_fvs)
+ fvs = fun_fvs `unionFVInfo` args_fvs
+ vars = fun_escs `unionVarSet` (getFVSet args_fvs)
-- All the free vars of the args are disqualified
-- from being let-no-escaped.
+
+ app `seq` fvs `seq` seqVarSet vars `seq` return (
+ app,
+ fvs,
+ vars
)