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/ffi | |
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/ffi')
-rw-r--r-- | testsuite/tests/ffi/should_run/ffi008.stderr | 2 | ||||
-rw-r--r-- | testsuite/tests/ffi/should_run/fptrfail01.stderr | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/testsuite/tests/ffi/should_run/ffi008.stderr b/testsuite/tests/ffi/should_run/ffi008.stderr index 78605178a6..83999ed16e 100644 --- a/testsuite/tests/ffi/should_run/ffi008.stderr +++ b/testsuite/tests/ffi/should_run/ffi008.stderr @@ -1,3 +1,3 @@ ffi008: this is an error -CallStack: +CallStack (from ImplicitParams): error, called at ffi008.hs:12:12 in main:Main diff --git a/testsuite/tests/ffi/should_run/fptrfail01.stderr b/testsuite/tests/ffi/should_run/fptrfail01.stderr index 5193181ea9..cf29208275 100644 --- a/testsuite/tests/ffi/should_run/fptrfail01.stderr +++ b/testsuite/tests/ffi/should_run/fptrfail01.stderr @@ -1,3 +1,3 @@ fptrfail01: GHC.ForeignPtr: attempt to mix Haskell and C finalizers in the same ForeignPtr -CallStack: - error, called at libraries/base/GHC/ForeignPtr.hs:352:17 in base:GHC.ForeignPtr +CallStack (from ImplicitParams): + error, called at libraries/base/GHC/ForeignPtr.hs:361:17 in base:GHC.ForeignPtr |