diff options
author | Krzysztof Gogolewski <krzysztof.gogolewski@tweag.io> | 2020-02-03 21:17:11 +0100 |
---|---|---|
committer | Krzysztof Gogolewski <krzysztof.gogolewski@tweag.io> | 2020-02-12 23:58:52 +0100 |
commit | df08468113ab46832b7ac0a7311b608d1b418c4d (patch) | |
tree | de3a0ed40b58162976e4831625471b5702b2121f /testsuite/tests/ado | |
parent | 6c2585e0816cb49487fa6a2be5b8e3f191cf3438 (diff) | |
download | haskell-df08468113ab46832b7ac0a7311b608d1b418c4d.tar.gz |
Always display inferred variables using braces
We now always show "forall {a}. T" for inferred variables,
previously this was controlled by -fprint-explicit-foralls.
This implements part 1 of https://github.com/ghc-proposals/ghc-proposals/pull/179.
Part of GHC ticket #16320.
Furthermore, when printing a levity restriction error, we now display
the HsWrap of the expression. This lets users see the full elaboration with
-fprint-typechecker-elaboration (see also #17670)
Diffstat (limited to 'testsuite/tests/ado')
-rw-r--r-- | testsuite/tests/ado/ado004.stderr | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/testsuite/tests/ado/ado004.stderr b/testsuite/tests/ado/ado004.stderr index f2fe23360c..47024fdfd1 100644 --- a/testsuite/tests/ado/ado004.stderr +++ b/testsuite/tests/ado/ado004.stderr @@ -8,37 +8,37 @@ TYPE SIGNATURES test1c :: forall (f :: * -> *). Applicative f => (Int -> f Int) -> f Int test2 :: - forall (f :: * -> *) t b. + forall {f :: * -> *} {t} {b}. (Applicative f, Num t, Num b) => (t -> f b) -> f b test2a :: - forall (f :: * -> *) t b. + forall {f :: * -> *} {t} {b}. (Functor f, Num t, Num b) => (t -> f b) -> f b test2b :: - forall (m :: * -> *) t a. (Monad m, Num t) => (t -> a) -> m a + forall {m :: * -> *} {t} {a}. (Monad m, Num t) => (t -> a) -> m a test2c :: - forall (f :: * -> *) t b. + forall {f :: * -> *} {t} {b}. (Functor f, Num t, Num b) => (t -> f b) -> f b test2d :: - forall (f :: * -> *) t1 b t2. + forall {f :: * -> *} {t1} {b} {t2}. (Functor f, Num t1, Num b) => (t1 -> f t2) -> f b test3 :: - forall (m :: * -> *) t1 t2 a. + forall {m :: * -> *} {t1} {t2} {a}. (Monad m, Num t1) => (t1 -> m t2) -> (t2 -> t2 -> m a) -> m a test4 :: - forall (m :: * -> *) t a1 a2. + forall {m :: * -> *} {t} {a1} {a2}. (Monad m, Num t) => (t -> m a1) -> (a1 -> a1 -> m a2) -> m a2 test5 :: - forall (m :: * -> *) t a1 a2. + forall {m :: * -> *} {t} {a1} {a2}. (Monad m, Num t) => (t -> m a1) -> (a1 -> a1 -> m a2) -> m a2 test6 :: - forall (m :: * -> *) a p. + forall {m :: * -> *} {a} {p}. (Monad m, Num (m a)) => (m a -> m (m a)) -> p -> m a Dependent modules: [] |