summaryrefslogtreecommitdiff
path: root/testsuite/tests/th/T8987.stderr
diff options
context:
space:
mode:
authorEric Seidel <gridaphobe@gmail.com>2015-09-02 10:22:01 +0200
committerBen Gamari <ben@smart-cactus.org>2015-09-02 13:21:43 +0200
commit6740d70d95cb81cea3859ff847afc61ec439db4f (patch)
tree08199080ae5e55aafa1ff05cffd929039d3345bf /testsuite/tests/th/T8987.stderr
parentad26c54b86a868567d324d5de6fd0b4c2ed28022 (diff)
downloadhaskell-6740d70d95cb81cea3859ff847afc61ec439db4f.tar.gz
Use IP based CallStack in error and undefined
This patch modifies `error`, `undefined`, and `assertError` to use implicit call-stacks to provide better error messages to users. There are a few knock-on effects: - `GHC.Classes.IP` is now wired-in so it can be used in the wired-in types for `error` and `undefined`. - `TysPrim.tyVarList` has been replaced with a new function `TysPrim.mkTemplateTyVars`. `tyVarList` made it easy to introduce subtle bugs when you need tyvars of different kinds. The naive ``` tv1 = head $ tyVarList kind1 tv2 = head $ tyVarList kind2 ``` would result in `tv1` and `tv2` sharing a `Unique`, thus substitutions would be applied incorrectly, treating `tv1` and `tv2` as the same tyvar. `mkTemplateTyVars` avoids this pitfall by taking a list of kinds and producing a single tyvar of each kind. - The types `GHC.SrcLoc.SrcLoc` and `GHC.Stack.CallStack` now live in ghc-prim. - The type `GHC.Exception.ErrorCall` has a new constructor `ErrorCallWithLocation` that takes two `String`s instead of one, the 2nd one being arbitrary metadata about the error (but usually the call-stack). A bi-directional pattern synonym `ErrorCall` continues to provide the old API. Updates Cabal, array, and haddock submodules. Reviewers: nh2, goldfire, simonpj, hvr, rwbarton, austin, bgamari Reviewed By: simonpj Subscribers: rwbarton, rodlogic, goldfire, maoe, simonmar, carter, liyang, bgamari, thomie Differential Revision: https://phabricator.haskell.org/D861 GHC Trac Issues: #5273
Diffstat (limited to 'testsuite/tests/th/T8987.stderr')
-rw-r--r--testsuite/tests/th/T8987.stderr5
1 files changed, 4 insertions, 1 deletions
diff --git a/testsuite/tests/th/T8987.stderr b/testsuite/tests/th/T8987.stderr
index 2b128bb101..6df4f7d4ec 100644
--- a/testsuite/tests/th/T8987.stderr
+++ b/testsuite/tests/th/T8987.stderr
@@ -1,5 +1,8 @@
-T8987.hs:1:1:
+T8987.hs:1:1: error:
Exception when trying to run compile-time code:
Prelude.undefined
+CallStack:
+ error, called at libraries/base/GHC/Err.hs:42:14 in base:GHC.Err
+ undefined, called at T8987.hs:6:23 in main:T8987
Code: (>>) reportWarning ['1', undefined] return []