summaryrefslogtreecommitdiff
path: root/testsuite/tests/deSugar/should_compile/T2431.stderr
diff options
context:
space:
mode:
authorSimon Peyton Jones <simonpj@microsoft.com>2016-01-06 17:40:09 +0000
committerSimon Peyton Jones <simonpj@microsoft.com>2016-01-07 08:37:23 +0000
commit9915b6564403a6d17651e9969e9ea5d7d7e78e7f (patch)
treee064a66dca1e8d1be5e04d0349c53e99fe391353 /testsuite/tests/deSugar/should_compile/T2431.stderr
parenta5cea73c658888e01c162723d3e0e1439514ecdb (diff)
downloadhaskell-9915b6564403a6d17651e9969e9ea5d7d7e78e7f.tar.gz
Make demand analysis understand catch
As Trac #11222, and #10712 note, the strictness analyser needs to be rather careful about exceptions. Previously it treated them as identical to divergence, but that won't quite do. See Note [Exceptions and strictness] in Demand, which explains the deal. Getting more strictness in 'catch' and friends is a very good thing. Here is the nofib summary, keeping only the big ones. -------------------------------------------------------------------------------- Program Size Allocs Runtime Elapsed TotalMem -------------------------------------------------------------------------------- fasta -0.1% -6.9% -3.0% -3.0% +0.0% hpg -0.1% -2.0% -6.2% -6.2% +0.0% maillist -0.1% -0.3% 0.08 0.09 +1.2% reverse-complem -0.1% -10.9% -6.0% -5.9% +0.0% sphere -0.1% -4.3% 0.08 0.08 +0.0% x2n1 -0.1% -0.0% 0.00 0.00 +0.0% -------------------------------------------------------------------------------- Min -0.2% -10.9% -17.4% -17.3% +0.0% Max -0.0% +0.0% +4.3% +4.4% +1.2% Geometric Mean -0.1% -0.3% -2.9% -3.0% +0.0% On the way I did quite a bit of refactoring in Demand.hs
Diffstat (limited to 'testsuite/tests/deSugar/should_compile/T2431.stderr')
-rw-r--r--testsuite/tests/deSugar/should_compile/T2431.stderr2
1 files changed, 1 insertions, 1 deletions
diff --git a/testsuite/tests/deSugar/should_compile/T2431.stderr b/testsuite/tests/deSugar/should_compile/T2431.stderr
index 37bf170f28..0184513754 100644
--- a/testsuite/tests/deSugar/should_compile/T2431.stderr
+++ b/testsuite/tests/deSugar/should_compile/T2431.stderr
@@ -55,7 +55,7 @@ T2431.$tc:~: =
-- RHS size: {terms: 4, types: 8, coercions: 0}
absurd :: forall a. Int :~: Bool -> a
-[GblId, Arity=1, Caf=NoCafRefs, Str=DmdType <L,U>b]
+[GblId, Arity=1, Caf=NoCafRefs, Str=DmdType <L,U>x]
absurd = \ (@ a4) (x :: Int :~: Bool) -> case x of _ [Occ=Dead] { }