diff options
author | Simon Marlow <marlowsd@gmail.com> | 2015-11-03 14:06:09 +0000 |
---|---|---|
committer | Simon Marlow <marlowsd@gmail.com> | 2015-11-13 16:06:42 +0000 |
commit | 8988be8561ce0857f3befd6ab3b6c29060685c0a (patch) | |
tree | 88848de1dd8bc6664fd0de65f9b04415a4b4cc67 /testsuite/tests/array | |
parent | 8868ff3eb742977c5de2609f7d748f4ff8882d6d (diff) | |
download | haskell-8988be8561ce0857f3befd6ab3b6c29060685c0a.tar.gz |
Make 'error' include the CCS call stack when profiled
Summary:
The idea here is that this gives a more detailed stack trace in two
cases:
1. With `-prof` and `-fprof-auto`
2. In GHCi (see #11047)
Example, with an error inserted in nofib/shootout/binary-trees:
```
$ ./Main 3
Main: z
CallStack (from ImplicitParams):
error, called at Main.hs:67:29 in main:Main
CallStack (from -prof):
Main.check' (Main.hs:(67,1)-(68,82))
Main.check (Main.hs:63:1-21)
Main.stretch (Main.hs:32:35-57)
Main.main.c (Main.hs:32:9-57)
Main.main (Main.hs:(27,1)-(43,42))
Main.CAF (<entire-module>)
```
This doesn't quite obsolete +RTS -xc, which also attempts to display
more information in the case when the error is in a CAF, but I'm
exploring other solutions to that.
Includes submodule updates.
Test Plan: validate
Reviewers: simonpj, ezyang, gridaphobe, bgamari, hvr, austin
Reviewed By: bgamari
Subscribers: thomie
Differential Revision: https://phabricator.haskell.org/D1426
Diffstat (limited to 'testsuite/tests/array')
-rw-r--r-- | testsuite/tests/array/should_run/arr003.stderr | 2 | ||||
-rw-r--r-- | testsuite/tests/array/should_run/arr004.stderr | 2 | ||||
-rw-r--r-- | testsuite/tests/array/should_run/arr007.stderr | 2 | ||||
-rw-r--r-- | testsuite/tests/array/should_run/arr008.stderr | 2 |
4 files changed, 4 insertions, 4 deletions
diff --git a/testsuite/tests/array/should_run/arr003.stderr b/testsuite/tests/array/should_run/arr003.stderr index bffb356a6d..a0d56ed0a6 100644 --- a/testsuite/tests/array/should_run/arr003.stderr +++ b/testsuite/tests/array/should_run/arr003.stderr @@ -1,3 +1,3 @@ arr003: Ix{Int}.index: Index (4) out of range ((1,3)) -CallStack: +CallStack (from ImplicitParams): error, called at libraries/base/GHC/Arr.hs:176:5 in base:GHC.Arr diff --git a/testsuite/tests/array/should_run/arr004.stderr b/testsuite/tests/array/should_run/arr004.stderr index b053770e1a..e109855a71 100644 --- a/testsuite/tests/array/should_run/arr004.stderr +++ b/testsuite/tests/array/should_run/arr004.stderr @@ -1,3 +1,3 @@ arr004: (Array.!): undefined array element -CallStack: +CallStack (from ImplicitParams): error, called at libraries/base/GHC/Arr.hs:402:16 in base:GHC.Arr diff --git a/testsuite/tests/array/should_run/arr007.stderr b/testsuite/tests/array/should_run/arr007.stderr index f23cb319d9..4c02cecf6e 100644 --- a/testsuite/tests/array/should_run/arr007.stderr +++ b/testsuite/tests/array/should_run/arr007.stderr @@ -1,3 +1,3 @@ arr007: Ix{Int}.index: Index (1) out of range ((1,0)) -CallStack: +CallStack (from ImplicitParams): error, called at libraries/base/GHC/Arr.hs:176:5 in base:GHC.Arr diff --git a/testsuite/tests/array/should_run/arr008.stderr b/testsuite/tests/array/should_run/arr008.stderr index b3cf392eb3..5355a07162 100644 --- a/testsuite/tests/array/should_run/arr008.stderr +++ b/testsuite/tests/array/should_run/arr008.stderr @@ -1,3 +1,3 @@ arr008: Ix{Int}.index: Index (2) out of range ((0,1)) -CallStack: +CallStack (from ImplicitParams): error, called at libraries/base/GHC/Arr.hs:176:5 in base:GHC.Arr |