diff options
63 files changed, 208 insertions, 226 deletions
diff --git a/testsuite/tests/arrows/should_fail/T5380.stderr b/testsuite/tests/arrows/should_fail/T5380.stderr index 6ffe59955a..218d36fb9c 100644 --- a/testsuite/tests/arrows/should_fail/T5380.stderr +++ b/testsuite/tests/arrows/should_fail/T5380.stderr @@ -6,9 +6,9 @@ T5380.hs:7:27: testB :: not_bool -> (() -> ()) -> () -> not_unit at T5380.hs:6:10 Relevant bindings include + b :: not_bool (bound at T5380.hs:7:7) testB :: not_bool -> (() -> ()) -> () -> not_unit (bound at T5380.hs:7:1) - b :: not_bool (bound at T5380.hs:7:7) In the expression: b In the expression: proc () -> if b then f -< () else f -< () diff --git a/testsuite/tests/gadt/T3169.stderr b/testsuite/tests/gadt/T3169.stderr index c095f958e8..d5c658f71a 100644 --- a/testsuite/tests/gadt/T3169.stderr +++ b/testsuite/tests/gadt/T3169.stderr @@ -10,9 +10,9 @@ T3169.hs:13:22: Expected type: Map a (Map b elt) Actual type: Map (a, b) elt Relevant bindings include + m :: Map (a, b) elt (bound at T3169.hs:12:17) + b :: b (bound at T3169.hs:12:13) lookup :: (a, b) -> Map (a, b) elt -> Maybe elt (bound at T3169.hs:12:3) - b :: b (bound at T3169.hs:12:13) - m :: Map (a, b) elt (bound at T3169.hs:12:17) In the second argument of ‛lookup’, namely ‛m’ In the expression: lookup a m :: Maybe (Map b elt) diff --git a/testsuite/tests/gadt/gadt7.stderr b/testsuite/tests/gadt/gadt7.stderr index d4c0468b5f..a14740580d 100644 --- a/testsuite/tests/gadt/gadt7.stderr +++ b/testsuite/tests/gadt/gadt7.stderr @@ -12,8 +12,8 @@ gadt7.hs:16:38: ‛t’ is a rigid type variable bound by the inferred type of i1b :: T t2 -> t1 -> t at gadt7.hs:16:1 Relevant bindings include - i1b :: T t2 -> t1 -> t (bound at gadt7.hs:16:1) - y :: t1 (bound at gadt7.hs:16:7) y1 :: t1 (bound at gadt7.hs:16:16) + y :: t1 (bound at gadt7.hs:16:7) + i1b :: T t2 -> t1 -> t (bound at gadt7.hs:16:1) In the expression: y1 In a case alternative: K -> y1 diff --git a/testsuite/tests/gadt/rw.stderr b/testsuite/tests/gadt/rw.stderr index 584eebb7a8..9273dbd27a 100644 --- a/testsuite/tests/gadt/rw.stderr +++ b/testsuite/tests/gadt/rw.stderr @@ -5,9 +5,9 @@ rw.hs:14:47: the type signature for writeInt :: T a -> IORef a -> IO () at rw.hs:12:12 Relevant bindings include - writeInt :: T a -> IORef a -> IO () (bound at rw.hs:13:1) - v :: T a (bound at rw.hs:13:10) ref :: IORef a (bound at rw.hs:13:12) + v :: T a (bound at rw.hs:13:10) + writeInt :: T a -> IORef a -> IO () (bound at rw.hs:13:1) In the second argument of ‛writeIORef’, namely ‛(1 :: Int)’ In the expression: writeIORef ref (1 :: Int) In a case alternative: ~(Li x) -> writeIORef ref (1 :: Int) @@ -20,8 +20,8 @@ rw.hs:19:51: Expected type: a -> Bool Actual type: Bool -> Bool Relevant bindings include - readBool :: T a -> IORef a -> IO () (bound at rw.hs:17:1) - v :: T a (bound at rw.hs:17:10) ref :: IORef a (bound at rw.hs:17:12) + v :: T a (bound at rw.hs:17:10) + readBool :: T a -> IORef a -> IO () (bound at rw.hs:17:1) In the second argument of ‛(.)’, namely ‛not’ In the second argument of ‛(>>=)’, namely ‛(print . not)’ diff --git a/testsuite/tests/ghci/scripts/Defer02.stderr b/testsuite/tests/ghci/scripts/Defer02.stderr index 53a58f83e6..5ff199cf5a 100644 --- a/testsuite/tests/ghci/scripts/Defer02.stderr +++ b/testsuite/tests/ghci/scripts/Defer02.stderr @@ -46,17 +46,17 @@ the type signature for h :: a -> (Char, Char) at ../../typecheck/should_run/Defer01.hs:33:6 Relevant bindings include + x :: a (bound at ../../typecheck/should_run/Defer01.hs:34:3) h :: a -> (Char, Char) (bound at ../../typecheck/should_run/Defer01.hs:34:1) - x :: a (bound at ../../typecheck/should_run/Defer01.hs:34:3) In the expression: x In the expression: (x, 'c') ../../typecheck/should_run/Defer01.hs:39:17: Warning: Couldn't match expected type ‛Bool’ with actual type ‛T a’ Relevant bindings include - i :: a -> () (bound at ../../typecheck/should_run/Defer01.hs:39:1) a :: a (bound at ../../typecheck/should_run/Defer01.hs:39:3) + i :: a -> () (bound at ../../typecheck/should_run/Defer01.hs:39:1) In the first argument of ‛not’, namely ‛(K a)’ In the expression: (not (K a)) @@ -151,17 +151,17 @@ the type signature for h :: a -> (Char, Char) at ../../typecheck/should_run/Defer01.hs:33:6 Relevant bindings include + x :: a (bound at ../../typecheck/should_run/Defer01.hs:34:3) h :: a -> (Char, Char) (bound at ../../typecheck/should_run/Defer01.hs:34:1) - x :: a (bound at ../../typecheck/should_run/Defer01.hs:34:3) In the expression: x In the expression: (x, 'c') (deferred type error) *** Exception: ../../typecheck/should_run/Defer01.hs:39:17: Couldn't match expected type ‛Bool’ with actual type ‛T a’ Relevant bindings include - i :: a -> () (bound at ../../typecheck/should_run/Defer01.hs:39:1) a :: a (bound at ../../typecheck/should_run/Defer01.hs:39:3) + i :: a -> () (bound at ../../typecheck/should_run/Defer01.hs:39:1) In the first argument of ‛not’, namely ‛(K a)’ In the expression: (not (K a)) (deferred type error) diff --git a/testsuite/tests/ghci/scripts/ghci050.stderr b/testsuite/tests/ghci/scripts/ghci050.stderr index 440547707c..191bf3cf6e 100644 --- a/testsuite/tests/ghci/scripts/ghci050.stderr +++ b/testsuite/tests/ghci/scripts/ghci050.stderr @@ -5,9 +5,9 @@ ‛a’ is a rigid type variable bound by the instance declaration at <interactive>:6:10 Relevant bindings include + b :: a (bound at <interactive>:6:43) + a :: a (bound at <interactive>:6:41) asList :: (a, a) -> [ListableElem (a, a)] (bound at <interactive>:6:33) - a :: a (bound at <interactive>:6:41) - b :: a (bound at <interactive>:6:43) In the expression: a In the expression: [a, b] diff --git a/testsuite/tests/indexed-types/should_compile/T3208b.stderr b/testsuite/tests/indexed-types/should_compile/T3208b.stderr index 1bf275e85b..228749247b 100644 --- a/testsuite/tests/indexed-types/should_compile/T3208b.stderr +++ b/testsuite/tests/indexed-types/should_compile/T3208b.stderr @@ -10,8 +10,8 @@ T3208b.hs:15:10: Expected type: STerm o0 Actual type: OTerm o0 Relevant bindings include - fce' :: a -> c (bound at T3208b.hs:15:1) f :: a (bound at T3208b.hs:15:6) + fce' :: a -> c (bound at T3208b.hs:15:1) In the expression: fce (apply f) In an equation for ‛fce'’: fce' f = fce (apply f) @@ -23,8 +23,8 @@ T3208b.hs:15:15: at T3208b.hs:14:9-56 The type variable ‛o0’ is ambiguous Relevant bindings include - fce' :: a -> c (bound at T3208b.hs:15:1) f :: a (bound at T3208b.hs:15:6) + fce' :: a -> c (bound at T3208b.hs:15:1) In the first argument of ‛fce’, namely ‛(apply f)’ In the expression: fce (apply f) In an equation for ‛fce'’: fce' f = fce (apply f) diff --git a/testsuite/tests/indexed-types/should_fail/GADTwrong1.stderr b/testsuite/tests/indexed-types/should_fail/GADTwrong1.stderr index bcde2e3c16..b12ea50925 100644 --- a/testsuite/tests/indexed-types/should_fail/GADTwrong1.stderr +++ b/testsuite/tests/indexed-types/should_fail/GADTwrong1.stderr @@ -14,7 +14,7 @@ GADTwrong1.hs:12:19: ‛b’ is a rigid type variable bound by the type signature for coerce :: a -> b at GADTwrong1.hs:10:20 Relevant bindings include - coerce :: a -> b (bound at GADTwrong1.hs:11:1) y :: a1 (bound at GADTwrong1.hs:12:14) + coerce :: a -> b (bound at GADTwrong1.hs:11:1) In the expression: y In a case alternative: T y -> y diff --git a/testsuite/tests/indexed-types/should_fail/Overlap10.stderr b/testsuite/tests/indexed-types/should_fail/Overlap10.stderr index b31de8d757..aad494e1a8 100644 --- a/testsuite/tests/indexed-types/should_fail/Overlap10.stderr +++ b/testsuite/tests/indexed-types/should_fail/Overlap10.stderr @@ -2,7 +2,7 @@ Overlap10.hs:10:7: Couldn't match expected type ‛F a Bool’ with actual type ‛Bool’ Relevant bindings include - g :: a -> F a Bool (bound at Overlap10.hs:10:1) x :: a (bound at Overlap10.hs:10:3) + g :: a -> F a Bool (bound at Overlap10.hs:10:1) In the expression: False In an equation for ‛g’: g x = False diff --git a/testsuite/tests/indexed-types/should_fail/Overlap6.stderr b/testsuite/tests/indexed-types/should_fail/Overlap6.stderr index ce0a64f8b2..6c1d016701 100644 --- a/testsuite/tests/indexed-types/should_fail/Overlap6.stderr +++ b/testsuite/tests/indexed-types/should_fail/Overlap6.stderr @@ -8,8 +8,8 @@ Overlap6.hs:15:7: Expected type: Proxy Bool (And x 'True) Actual type: Proxy Bool x Relevant bindings include + x :: Proxy Bool x (bound at Overlap6.hs:15:3) g :: Proxy Bool x -> Proxy Bool (And x 'True) (bound at Overlap6.hs:15:1) - x :: Proxy Bool x (bound at Overlap6.hs:15:3) In the expression: x In an equation for ‛g’: g x = x diff --git a/testsuite/tests/indexed-types/should_fail/Overlap9.stderr b/testsuite/tests/indexed-types/should_fail/Overlap9.stderr index 9f9f102cc1..69f37f1137 100644 --- a/testsuite/tests/indexed-types/should_fail/Overlap9.stderr +++ b/testsuite/tests/indexed-types/should_fail/Overlap9.stderr @@ -5,7 +5,7 @@ Overlap9.hs:10:7: bound by the type signature for g :: Show a => a -> F a at Overlap9.hs:9:6-23 Relevant bindings include - g :: a -> F a (bound at Overlap9.hs:10:1) x :: a (bound at Overlap9.hs:10:3) + g :: a -> F a (bound at Overlap9.hs:10:1) In the expression: length (show x) In an equation for ‛g’: g x = length (show x) diff --git a/testsuite/tests/indexed-types/should_fail/T2664.stderr b/testsuite/tests/indexed-types/should_fail/T2664.stderr index 4982410ca9..a8d24c816f 100644 --- a/testsuite/tests/indexed-types/should_fail/T2664.stderr +++ b/testsuite/tests/indexed-types/should_fail/T2664.stderr @@ -15,8 +15,8 @@ T2664.hs:31:52: Expected type: Dual (Dual a) Actual type: b Relevant bindings include - newPChan :: IO (PChan (a :*: b), PChan c) (bound at T2664.hs:23:5) v :: MVar (Either (PChan a) (PChan b)) (bound at T2664.hs:24:9) + newPChan :: IO (PChan (a :*: b), PChan c) (bound at T2664.hs:23:5) In the third argument of ‛pchoose’, namely ‛newPChan’ In the first argument of ‛E’, namely ‛(pchoose Right v newPChan)’ In the expression: diff --git a/testsuite/tests/indexed-types/should_fail/T3330a.stderr b/testsuite/tests/indexed-types/should_fail/T3330a.stderr index 220eb522ba..2d6482baa4 100644 --- a/testsuite/tests/indexed-types/should_fail/T3330a.stderr +++ b/testsuite/tests/indexed-types/should_fail/T3330a.stderr @@ -9,9 +9,9 @@ T3330a.hs:19:34: -> r ix1 -> Writer [AnyF s] (r'0 ix1) Actual type: s ix Relevant bindings include - children :: s ix -> PF s r ix -> [AnyF s] (bound at T3330a.hs:19:1) - p :: s ix (bound at T3330a.hs:19:10) x :: PF s r ix (bound at T3330a.hs:19:12) + p :: s ix (bound at T3330a.hs:19:10) + children :: s ix -> PF s r ix -> [AnyF s] (bound at T3330a.hs:19:1) In the first argument of ‛hmapM’, namely ‛p’ In the first argument of ‛execWriter’, namely ‛(hmapM p collect x)’ @@ -24,9 +24,9 @@ T3330a.hs:19:34: -> r ix1 -> Writer [AnyF s] (r'0 ix1) Actual type: s ix Relevant bindings include - children :: s ix -> PF s r ix -> [AnyF s] (bound at T3330a.hs:19:1) - p :: s ix (bound at T3330a.hs:19:10) x :: PF s r ix (bound at T3330a.hs:19:12) + p :: s ix (bound at T3330a.hs:19:10) + children :: s ix -> PF s r ix -> [AnyF s] (bound at T3330a.hs:19:1) In the first argument of ‛hmapM’, namely ‛p’ In the first argument of ‛execWriter’, namely ‛(hmapM p collect x)’ @@ -38,8 +38,8 @@ T3330a.hs:19:44: Expected type: PF s r (r0 ix0 -> Writer [AnyF s0] (r0 ix0)) Actual type: PF s r ix Relevant bindings include - children :: s ix -> PF s r ix -> [AnyF s] (bound at T3330a.hs:19:1) - p :: s ix (bound at T3330a.hs:19:10) x :: PF s r ix (bound at T3330a.hs:19:12) + p :: s ix (bound at T3330a.hs:19:10) + children :: s ix -> PF s r ix -> [AnyF s] (bound at T3330a.hs:19:1) In the third argument of ‛hmapM’, namely ‛x’ In the first argument of ‛execWriter’, namely ‛(hmapM p collect x)’ diff --git a/testsuite/tests/indexed-types/should_fail/T3330c.stderr b/testsuite/tests/indexed-types/should_fail/T3330c.stderr index 09e5304eac..3e938c5705 100644 --- a/testsuite/tests/indexed-types/should_fail/T3330c.stderr +++ b/testsuite/tests/indexed-types/should_fail/T3330c.stderr @@ -16,9 +16,9 @@ T3330c.hs:23:43: Expected type: Der ((->) x) (f1 x) Actual type: R f1 Relevant bindings include - plug' :: R f -> Der f x -> x -> f x (bound at T3330c.hs:23:1) - rf :: R f1 (bound at T3330c.hs:23:13) - df :: f1 x (bound at T3330c.hs:23:25) x :: x (bound at T3330c.hs:23:29) + df :: f1 x (bound at T3330c.hs:23:25) + rf :: R f1 (bound at T3330c.hs:23:13) + plug' :: R f -> Der f x -> x -> f x (bound at T3330c.hs:23:1) In the first argument of ‛plug’, namely ‛rf’ In the first argument of ‛Inl’, namely ‛(plug rf df x)’ diff --git a/testsuite/tests/indexed-types/should_fail/T3440.stderr b/testsuite/tests/indexed-types/should_fail/T3440.stderr index 1889938545..b01594951f 100644 --- a/testsuite/tests/indexed-types/should_fail/T3440.stderr +++ b/testsuite/tests/indexed-types/should_fail/T3440.stderr @@ -15,8 +15,8 @@ T3440.hs:11:22: the type signature for unwrap :: GADT (Fam a) -> (a, Fam a) at T3440.hs:10:11 Relevant bindings include - unwrap :: GADT (Fam a) -> (a, Fam a) (bound at T3440.hs:11:1) - x :: a1 (bound at T3440.hs:11:14) y :: Fam a1 (bound at T3440.hs:11:16) + x :: a1 (bound at T3440.hs:11:14) + unwrap :: GADT (Fam a) -> (a, Fam a) (bound at T3440.hs:11:1) In the expression: x In the expression: (x, y) diff --git a/testsuite/tests/indexed-types/should_fail/T4093b.stderr b/testsuite/tests/indexed-types/should_fail/T4093b.stderr index b80cf634a8..8d5f80108e 100644 --- a/testsuite/tests/indexed-types/should_fail/T4093b.stderr +++ b/testsuite/tests/indexed-types/should_fail/T4093b.stderr @@ -17,14 +17,14 @@ T4093b.hs:31:13: Expected type: EitherCO e (A C O n) (A O O n) Actual type: (MaybeC C (n C O), MaybeC O (n O C)) Relevant bindings include - blockToNodeList :: Block n e x -> A e x n (bound at T4093b.hs:25:1) - b :: Block n e x (bound at T4093b.hs:25:17) - l :: n O C - -> EitherCO e (A C O n) (A O O n) -> EitherCO e (A C C n) (A O C n) - (bound at T4093b.hs:34:5) f :: n C O -> EitherCO e (A C O n) (A O O n) -> EitherCO e (A C O n) (A O O n) (bound at T4093b.hs:31:5) + l :: n O C + -> EitherCO e (A C O n) (A O O n) -> EitherCO e (A C C n) (A O C n) + (bound at T4093b.hs:34:5) + b :: Block n e x (bound at T4093b.hs:25:17) + blockToNodeList :: Block n e x -> A e x n (bound at T4093b.hs:25:1) In the expression: (JustC n, NothingC) In an equation for ‛f’: f n _ = (JustC n, NothingC) In an equation for ‛blockToNodeList’: diff --git a/testsuite/tests/indexed-types/should_fail/T4099.stderr b/testsuite/tests/indexed-types/should_fail/T4099.stderr index ed0e572c44..1b21b930d9 100644 --- a/testsuite/tests/indexed-types/should_fail/T4099.stderr +++ b/testsuite/tests/indexed-types/should_fail/T4099.stderr @@ -4,9 +4,9 @@ T4099.hs:11:30: NB: ‛T’ is a type function, and may not be injective The type variable ‛a0’ is ambiguous Relevant bindings include - bar1 :: b -> T b -> Int (bound at T4099.hs:11:1) - a :: b (bound at T4099.hs:11:6) x :: T b (bound at T4099.hs:11:8) + a :: b (bound at T4099.hs:11:6) + bar1 :: b -> T b -> Int (bound at T4099.hs:11:1) In the second argument of ‛foo’, namely ‛x’ In the expression: foo (error "urk") x @@ -14,8 +14,8 @@ T4099.hs:14:30: Couldn't match expected type ‛T a1’ with actual type ‛Maybe b’ The type variable ‛a1’ is ambiguous Relevant bindings include - bar2 :: b -> Maybe b -> Int (bound at T4099.hs:14:1) - a :: b (bound at T4099.hs:14:6) x :: Maybe b (bound at T4099.hs:14:8) + a :: b (bound at T4099.hs:14:6) + bar2 :: b -> Maybe b -> Int (bound at T4099.hs:14:1) In the second argument of ‛foo’, namely ‛x’ In the expression: foo (error "urk") x diff --git a/testsuite/tests/indexed-types/should_fail/T4272.stderr b/testsuite/tests/indexed-types/should_fail/T4272.stderr index f3dcdbc13d..1214e8492d 100644 --- a/testsuite/tests/indexed-types/should_fail/T4272.stderr +++ b/testsuite/tests/indexed-types/should_fail/T4272.stderr @@ -11,8 +11,8 @@ T4272.hs:15:26: Expected type: TermFamily a (TermFamily a a) Actual type: TermFamily a a Relevant bindings include - laws :: TermFamily a a -> b (bound at T4272.hs:15:1) t :: TermFamily a a (bound at T4272.hs:15:6) + laws :: TermFamily a a -> b (bound at T4272.hs:15:1) In the first argument of ‛terms’, namely ‛(undefined :: TermFamily a a)’ In the second argument of ‛prune’, namely diff --git a/testsuite/tests/indexed-types/should_fail/T5439.stderr b/testsuite/tests/indexed-types/should_fail/T5439.stderr index 18b1bec721..ea7c6c53d5 100644 --- a/testsuite/tests/indexed-types/should_fail/T5439.stderr +++ b/testsuite/tests/indexed-types/should_fail/T5439.stderr @@ -5,14 +5,14 @@ T5439.hs:83:28: Expected type: f (Attempt (HNth n0 l0) -> Attempt (HElemOf l0)) Actual type: f (Attempt (WaitOpResult (WaitOps rs))) Relevant bindings include + register :: Bool -> Peano n -> WaitOps (HDrop n rs) -> IO Bool + (bound at T5439.hs:65:9) + ev :: f (Attempt (WaitOpResult (WaitOps rs))) + (bound at T5439.hs:62:22) + ops :: WaitOps rs (bound at T5439.hs:62:18) registerWaitOp :: WaitOps rs -> f (Attempt (WaitOpResult (WaitOps rs))) -> IO Bool (bound at T5439.hs:62:3) - ops :: WaitOps rs (bound at T5439.hs:62:18) - ev :: f (Attempt (WaitOpResult (WaitOps rs))) - (bound at T5439.hs:62:22) - register :: Bool -> Peano n -> WaitOps (HDrop n rs) -> IO Bool - (bound at T5439.hs:65:9) In the first argument of ‛complete’, namely ‛ev’ In the expression: complete ev diff --git a/testsuite/tests/indexed-types/should_fail/T7194.stderr b/testsuite/tests/indexed-types/should_fail/T7194.stderr index c55d44a93f..68c2429fe6 100644 --- a/testsuite/tests/indexed-types/should_fail/T7194.stderr +++ b/testsuite/tests/indexed-types/should_fail/T7194.stderr @@ -6,8 +6,8 @@ T7194.hs:18:35: the type signature for g :: C (F a) => a -> Int at T7194.hs:17:23-41 Relevant bindings include - x :: b0 (bound at T7194.hs:17:9) - g :: a -> Int (bound at T7194.hs:18:18) y :: a (bound at T7194.hs:18:20) + g :: a -> Int (bound at T7194.hs:18:18) + x :: b0 (bound at T7194.hs:17:9) In the expression: foo y In the first argument of ‛length’, namely ‛[x, foo y]’ diff --git a/testsuite/tests/parser/should_fail/T7848.stderr b/testsuite/tests/parser/should_fail/T7848.stderr index f37d356284..3fc3998a01 100644 --- a/testsuite/tests/parser/should_fail/T7848.stderr +++ b/testsuite/tests/parser/should_fail/T7848.stderr @@ -3,10 +3,10 @@ T7848.hs:10:9: Couldn't match expected type ‛forall a. a’ with actual type ‛t -> t1 -> A -> A -> A -> A -> t2’ Relevant bindings include - x :: t -> t1 -> A -> A -> A -> A -> t2 (bound at T7848.hs:6:1) - (+) :: t (bound at T7848.hs:6:3) - (&) :: t1 (bound at T7848.hs:6:8) z :: t1 (bound at T7848.hs:6:12) + (&) :: t1 (bound at T7848.hs:6:8) + (+) :: t (bound at T7848.hs:6:3) + x :: t -> t1 -> A -> A -> A -> A -> t2 (bound at T7848.hs:6:1) In the SPECIALISE pragma {-# SPECIALIZE (&) :: a #-} In an equation for ‛x’: x (+) ((&)@z) ((:&&) a b) (c :&& d) (e `A` f) (A g h) diff --git a/testsuite/tests/parser/should_fail/readFail003.stderr b/testsuite/tests/parser/should_fail/readFail003.stderr index ae3518eeed..03a60eff13 100644 --- a/testsuite/tests/parser/should_fail/readFail003.stderr +++ b/testsuite/tests/parser/should_fail/readFail003.stderr @@ -3,9 +3,9 @@ readFail003.hs:4:27: Occurs check: cannot construct the infinite type: t ~ (t, [a], [a1]) Relevant bindings include - c :: [a1] (bound at readFail003.hs:4:7) - b :: [a] (bound at readFail003.hs:4:5) a :: t (bound at readFail003.hs:4:3) + b :: [a] (bound at readFail003.hs:4:5) + c :: [a1] (bound at readFail003.hs:4:7) In the expression: a In a pattern binding: ~(a, b, c) @@ -19,9 +19,9 @@ readFail003.hs:5:27: Occurs check: cannot construct the infinite type: t ~ (t, [a], [a1]) Relevant bindings include - c :: [a1] (bound at readFail003.hs:4:7) - b :: [a] (bound at readFail003.hs:4:5) a :: t (bound at readFail003.hs:4:3) + b :: [a] (bound at readFail003.hs:4:5) + c :: [a1] (bound at readFail003.hs:4:7) In the expression: a In a pattern binding: ~(a, b, c) @@ -35,9 +35,9 @@ readFail003.hs:6:27: Occurs check: cannot construct the infinite type: t ~ (t, [a], [a1]) Relevant bindings include - c :: [a1] (bound at readFail003.hs:4:7) - b :: [a] (bound at readFail003.hs:4:5) a :: t (bound at readFail003.hs:4:3) + b :: [a] (bound at readFail003.hs:4:5) + c :: [a1] (bound at readFail003.hs:4:7) In the expression: a In a pattern binding: ~(a, b, c) diff --git a/testsuite/tests/polykinds/T6068.stdout b/testsuite/tests/polykinds/T6068.stdout index e0d81eb049..7fd6e57fdb 100644 --- a/testsuite/tests/polykinds/T6068.stdout +++ b/testsuite/tests/polykinds/T6068.stdout @@ -1,2 +1,2 @@ -exists Nothing
- :: Floop * (KProxy (Maybe *)) a kp => Existential (Maybe *) kp
+exists Nothing + :: Floop * (KProxy (Maybe *)) a mp => Existential (Maybe *) mp diff --git a/testsuite/tests/polykinds/T7230.stderr b/testsuite/tests/polykinds/T7230.stderr index 34695d0e02..c7a2b50063 100644 --- a/testsuite/tests/polykinds/T7230.stderr +++ b/testsuite/tests/polykinds/T7230.stderr @@ -21,8 +21,8 @@ T7230.hs:48:32: Expected type: SBool (Increasing xs) Actual type: SBool (x :<<= x1) Relevant bindings include - x :: Sing Nat x (bound at T7230.hs:48:14) y :: Sing Nat x1 (bound at T7230.hs:48:23) + x :: Sing Nat x (bound at T7230.hs:48:14) In the expression: x %:<<= y In an equation for ‛crash’: crash (SCons x (SCons y xs)) = x %:<<= y diff --git a/testsuite/tests/polykinds/T7438.stderr b/testsuite/tests/polykinds/T7438.stderr index aaa4daf019..940f87bf68 100644 --- a/testsuite/tests/polykinds/T7438.stderr +++ b/testsuite/tests/polykinds/T7438.stderr @@ -14,7 +14,7 @@ T7438.hs:6:14: the inferred type of go :: Thrist k t2 t3 -> t -> t1 at T7438.hs:6:1 Relevant bindings include - go :: Thrist k t2 t3 -> t -> t1 (bound at T7438.hs:6:1) acc :: t (bound at T7438.hs:6:8) + go :: Thrist k t2 t3 -> t -> t1 (bound at T7438.hs:6:1) In the expression: acc In an equation for ‛go’: go Nil acc = acc diff --git a/testsuite/tests/rebindable/rebindable6.stderr b/testsuite/tests/rebindable/rebindable6.stderr index e36e38d056..6833a511fd 100644 --- a/testsuite/tests/rebindable/rebindable6.stderr +++ b/testsuite/tests/rebindable/rebindable6.stderr @@ -4,10 +4,10 @@ rebindable6.hs:106:17: arising from a do statement The type variable ‛t0’ is ambiguous Relevant bindings include + g :: IO (Maybe b) (bound at rebindable6.hs:104:19) + f :: IO a (bound at rebindable6.hs:104:17) test_do :: IO a -> IO (Maybe b) -> IO b (bound at rebindable6.hs:104:9) - f :: IO a (bound at rebindable6.hs:104:17) - g :: IO (Maybe b) (bound at rebindable6.hs:104:19) Note: there is a potential instance available: instance HasSeq (IO a -> IO b -> IO b) -- Defined at rebindable6.hs:52:18 @@ -27,9 +27,9 @@ rebindable6.hs:107:17: arising from a do statement The type variables ‛t0’, ‛t1’ are ambiguous Relevant bindings include + g :: IO (Maybe b) (bound at rebindable6.hs:104:19) test_do :: IO a -> IO (Maybe b) -> IO b (bound at rebindable6.hs:104:9) - g :: IO (Maybe b) (bound at rebindable6.hs:104:19) Note: there is a potential instance available: instance HasBind (IO a -> (a -> IO b) -> IO b) -- Defined at rebindable6.hs:47:18 @@ -49,10 +49,10 @@ rebindable6.hs:108:17: arising from a use of ‛return’ The type variable ‛t1’ is ambiguous Relevant bindings include + b :: b (bound at rebindable6.hs:107:23) + g :: IO (Maybe b) (bound at rebindable6.hs:104:19) test_do :: IO a -> IO (Maybe b) -> IO b (bound at rebindable6.hs:104:9) - g :: IO (Maybe b) (bound at rebindable6.hs:104:19) - b :: b (bound at rebindable6.hs:107:23) Note: there is a potential instance available: instance HasReturn (a -> IO a) -- Defined at rebindable6.hs:42:18 In a stmt of a 'do' block: return b diff --git a/testsuite/tests/simplCore/should_compile/simpl017.stderr b/testsuite/tests/simplCore/should_compile/simpl017.stderr index 9bb1737fda..681c890246 100644 --- a/testsuite/tests/simplCore/should_compile/simpl017.stderr +++ b/testsuite/tests/simplCore/should_compile/simpl017.stderr @@ -3,11 +3,11 @@ simpl017.hs:44:12: Couldn't match expected type ‛forall v. [E m i] -> E' v m a’ with actual type ‛[E m i] -> E' v0 m a’ Relevant bindings include + f :: [E m i] -> E' v0 m a (bound at simpl017.hs:43:9) + ix :: [E m i] -> m i (bound at simpl017.hs:41:9) + a :: arr i a (bound at simpl017.hs:39:11) liftArray :: arr i a -> E m (forall v. [E m i] -> E' v m a) (bound at simpl017.hs:39:1) - a :: arr i a (bound at simpl017.hs:39:11) - ix :: [E m i] -> m i (bound at simpl017.hs:41:9) - f :: [E m i] -> E' v0 m a (bound at simpl017.hs:43:9) In the first argument of ‛return’, namely ‛f’ In a stmt of a 'do' block: return f @@ -18,10 +18,10 @@ simpl017.hs:63:5: Expected type: [E (ST t0) Int] -> E (ST s) Int Actual type: forall v. [E (ST s) Int] -> E' v (ST s) Int Relevant bindings include - foo :: STArray s Int Int -> ST s Int (bound at simpl017.hs:59:1) - ma :: STArray s Int Int (bound at simpl017.hs:59:5) a :: forall v. [E (ST s) Int] -> E' v (ST s) Int (bound at simpl017.hs:60:5) + ma :: STArray s Int Int (bound at simpl017.hs:59:5) + foo :: STArray s Int Int -> ST s Int (bound at simpl017.hs:59:1) The function ‛a’ is applied to one argument, but its type ‛forall v. [E (ST s) Int] -> E' v (ST s) Int’ has none In the first argument of ‛plus’, namely ‛a [one]’ @@ -34,10 +34,10 @@ simpl017.hs:63:19: Expected type: [E (ST t1) Int] -> E (ST s) Int Actual type: forall v. [E (ST s) Int] -> E' v (ST s) Int Relevant bindings include - foo :: STArray s Int Int -> ST s Int (bound at simpl017.hs:59:1) - ma :: STArray s Int Int (bound at simpl017.hs:59:5) a :: forall v. [E (ST s) Int] -> E' v (ST s) Int (bound at simpl017.hs:60:5) + ma :: STArray s Int Int (bound at simpl017.hs:59:5) + foo :: STArray s Int Int -> ST s Int (bound at simpl017.hs:59:1) The function ‛a’ is applied to one argument, but its type ‛forall v. [E (ST s) Int] -> E' v (ST s) Int’ has none In the second argument of ‛plus’, namely ‛a [one]’ diff --git a/testsuite/tests/th/T5358.stderr b/testsuite/tests/th/T5358.stderr index bc4138f8a9..87f81d1137 100644 --- a/testsuite/tests/th/T5358.stderr +++ b/testsuite/tests/th/T5358.stderr @@ -12,8 +12,8 @@ T5358.hs:8:1: T5358.hs:10:13: Couldn't match expected type ‛t -> a0’ with actual type ‛Int’ Relevant bindings include - prop_x1 :: t -> Bool (bound at T5358.hs:10:1) x :: t (bound at T5358.hs:10:9) + prop_x1 :: t -> Bool (bound at T5358.hs:10:1) The function ‛t1’ is applied to one argument, but its type ‛Int’ has none In the first argument of ‛(==)’, namely ‛t1 x’ @@ -22,8 +22,8 @@ T5358.hs:10:13: T5358.hs:10:21: Couldn't match expected type ‛t -> a0’ with actual type ‛Int’ Relevant bindings include - prop_x1 :: t -> Bool (bound at T5358.hs:10:1) x :: t (bound at T5358.hs:10:9) + prop_x1 :: t -> Bool (bound at T5358.hs:10:1) The function ‛t2’ is applied to one argument, but its type ‛Int’ has none In the second argument of ‛(==)’, namely ‛t2 x’ diff --git a/testsuite/tests/typecheck/should_compile/FD2.stderr b/testsuite/tests/typecheck/should_compile/FD2.stderr index cd75dabf64..679f05ddeb 100644 --- a/testsuite/tests/typecheck/should_compile/FD2.stderr +++ b/testsuite/tests/typecheck/should_compile/FD2.stderr @@ -21,10 +21,10 @@ FD2.hs:26:34: mf :: Elem a e1 => e1 -> Maybe e1 -> Maybe e1 at FD2.hs:24:18 Relevant bindings include - foldr1 :: (e -> e -> e) -> a -> e (bound at FD2.hs:22:3) - f :: e -> e -> e (bound at FD2.hs:22:10) - mf :: e1 -> Maybe e1 -> Maybe e1 (bound at FD2.hs:25:12) - x :: e1 (bound at FD2.hs:26:15) y :: e1 (bound at FD2.hs:26:23) + x :: e1 (bound at FD2.hs:26:15) + mf :: e1 -> Maybe e1 -> Maybe e1 (bound at FD2.hs:25:12) + f :: e -> e -> e (bound at FD2.hs:22:10) + foldr1 :: (e -> e -> e) -> a -> e (bound at FD2.hs:22:3) In the first argument of ‛Just’, namely ‛(f x y)’ In the expression: Just (f x y) diff --git a/testsuite/tests/typecheck/should_compile/T2494.stderr b/testsuite/tests/typecheck/should_compile/T2494.stderr index 370290df82..7f1a2b0ff4 100644 --- a/testsuite/tests/typecheck/should_compile/T2494.stderr +++ b/testsuite/tests/typecheck/should_compile/T2494.stderr @@ -8,11 +8,11 @@ T2494.hs:15:14: Expected type: Maybe (m a) -> Maybe (m a) Actual type: Maybe (m b) -> Maybe (m b) Relevant bindings include - x :: Maybe a (bound at T2494.hs:14:65) - g :: forall (m :: * -> *). Monad m => Maybe (m b) -> Maybe (m b) - (bound at T2494.hs:14:11) f :: forall (m :: * -> *). Monad m => Maybe (m a) -> Maybe (m a) (bound at T2494.hs:13:11) + g :: forall (m :: * -> *). Monad m => Maybe (m b) -> Maybe (m b) + (bound at T2494.hs:14:11) + x :: Maybe a (bound at T2494.hs:14:65) In the first argument of ‛foo’, namely ‛g’ In the second argument of ‛foo’, namely ‛(foo g x)’ @@ -25,10 +25,10 @@ T2494.hs:15:30: Expected type: Maybe (m a) -> Maybe (m a) Actual type: Maybe (m b) -> Maybe (m b) Relevant bindings include - x :: Maybe a (bound at T2494.hs:14:65) - g :: forall (m :: * -> *). Monad m => Maybe (m b) -> Maybe (m b) - (bound at T2494.hs:14:11) f :: forall (m :: * -> *). Monad m => Maybe (m a) -> Maybe (m a) (bound at T2494.hs:13:11) + g :: forall (m :: * -> *). Monad m => Maybe (m b) -> Maybe (m b) + (bound at T2494.hs:14:11) + x :: Maybe a (bound at T2494.hs:14:65) In the second argument of ‛(.)’, namely ‛g’ In the first argument of ‛foo’, namely ‛(f . g)’ diff --git a/testsuite/tests/typecheck/should_compile/holes.stderr b/testsuite/tests/typecheck/should_compile/holes.stderr index 58d89598bf..953982e095 100644 --- a/testsuite/tests/typecheck/should_compile/holes.stderr +++ b/testsuite/tests/typecheck/should_compile/holes.stderr @@ -3,29 +3,21 @@ holes.hs:5:5: Warning: Found hole ‛_’ with type: t Where: ‛t’ is a rigid type variable bound by the inferred type of f :: t at holes.hs:5:1 - Relevant bindings include - z :: forall a. [a] -> [a] (bound at holes.hs:13:1) - h :: [Char] (bound at holes.hs:10:1) - g :: Int -> Char (bound at holes.hs:8:1) - f :: t (bound at holes.hs:5:1) + Relevant bindings include f :: t (bound at holes.hs:5:1) In the expression: _ In an equation for ‛f’: f = _ holes.hs:8:7: Warning: Found hole ‛_’ with type: Char Relevant bindings include - z :: forall a. [a] -> [a] (bound at holes.hs:13:1) - h :: [Char] (bound at holes.hs:10:1) - g :: Int -> Char (bound at holes.hs:8:1) x :: Int (bound at holes.hs:8:3) + g :: Int -> Char (bound at holes.hs:8:1) In the expression: _ In an equation for ‛g’: g x = _ holes.hs:10:5: Warning: Found hole ‛_’ with type: [Char] - Relevant bindings include - z :: forall a. [a] -> [a] (bound at holes.hs:13:1) - h :: [Char] (bound at holes.hs:10:1) + Relevant bindings include h :: [Char] (bound at holes.hs:10:1) In the first argument of ‛(++)’, namely ‛_’ In the expression: _ ++ "a" In an equation for ‛h’: h = _ ++ "a" @@ -34,8 +26,8 @@ holes.hs:13:15: Warning: Found hole ‛_’ with type: b0 Where: ‛b0’ is an ambiguous type variable Relevant bindings include - z :: [a] -> [a] (bound at holes.hs:13:1) y :: [a] (bound at holes.hs:13:3) + z :: [a] -> [a] (bound at holes.hs:13:1) In the second argument of ‛const’, namely ‛_’ In the expression: const y _ In an equation for ‛z’: z y = const y _ diff --git a/testsuite/tests/typecheck/should_compile/holes3.stderr b/testsuite/tests/typecheck/should_compile/holes3.stderr index dfe60315ae..c4666ec3a4 100644 --- a/testsuite/tests/typecheck/should_compile/holes3.stderr +++ b/testsuite/tests/typecheck/should_compile/holes3.stderr @@ -3,29 +3,21 @@ holes3.hs:5:5: Found hole ‛_’ with type: t Where: ‛t’ is a rigid type variable bound by the inferred type of f :: t at holes3.hs:5:1 - Relevant bindings include - z :: forall a. [a] -> [a] (bound at holes3.hs:13:1) - h :: [Char] (bound at holes3.hs:10:1) - g :: Int -> Char (bound at holes3.hs:8:1) - f :: t (bound at holes3.hs:5:1) + Relevant bindings include f :: t (bound at holes3.hs:5:1) In the expression: _ In an equation for ‛f’: f = _ holes3.hs:8:7: Found hole ‛_gr’ with type: Char Relevant bindings include - z :: forall a. [a] -> [a] (bound at holes3.hs:13:1) - h :: [Char] (bound at holes3.hs:10:1) - g :: Int -> Char (bound at holes3.hs:8:1) x :: Int (bound at holes3.hs:8:3) + g :: Int -> Char (bound at holes3.hs:8:1) In the expression: _gr In an equation for ‛g’: g x = _gr holes3.hs:10:5: Found hole ‛_aa’ with type: [Char] - Relevant bindings include - z :: forall a. [a] -> [a] (bound at holes3.hs:13:1) - h :: [Char] (bound at holes3.hs:10:1) + Relevant bindings include h :: [Char] (bound at holes3.hs:10:1) In the first argument of ‛(++)’, namely ‛_aa’ In the expression: _aa ++ "a" In an equation for ‛h’: h = _aa ++ "a" @@ -34,8 +26,8 @@ holes3.hs:13:15: Found hole ‛_x’ with type: b0 Where: ‛b0’ is an ambiguous type variable Relevant bindings include - z :: [a] -> [a] (bound at holes3.hs:13:1) y :: [a] (bound at holes3.hs:13:3) + z :: [a] -> [a] (bound at holes3.hs:13:1) In the second argument of ‛const’, namely ‛_x’ In the expression: const y _x In an equation for ‛z’: z y = const y _x diff --git a/testsuite/tests/typecheck/should_compile/tc141.stderr b/testsuite/tests/typecheck/should_compile/tc141.stderr index 9284620f9e..b63aa997ce 100644 --- a/testsuite/tests/typecheck/should_compile/tc141.stderr +++ b/testsuite/tests/typecheck/should_compile/tc141.stderr @@ -13,10 +13,10 @@ tc141.hs:11:31: an expression type signature: a1 at tc141.hs:11:31-34 Relevant bindings include - f :: (a, a) -> (t, a) (bound at tc141.hs:11:1) - x :: (a, a) (bound at tc141.hs:11:3) - q :: a (bound at tc141.hs:11:17) p :: a (bound at tc141.hs:11:12) + q :: a (bound at tc141.hs:11:17) + x :: (a, a) (bound at tc141.hs:11:3) + f :: (a, a) -> (t, a) (bound at tc141.hs:11:1) In the expression: q :: a In the expression: (q :: a, p) @@ -39,8 +39,8 @@ tc141.hs:15:18: the type signature for v :: a2 at tc141.hs:14:19 Relevant bindings include - g :: a -> t -> a1 (bound at tc141.hs:13:1) - b :: t (bound at tc141.hs:13:5) v :: a2 (bound at tc141.hs:15:14) + b :: t (bound at tc141.hs:13:5) + g :: a -> t -> a1 (bound at tc141.hs:13:1) In the expression: b In an equation for ‛v’: v = b diff --git a/testsuite/tests/typecheck/should_fail/T1899.stderr b/testsuite/tests/typecheck/should_fail/T1899.stderr index 50754a6cb5..55fc356324 100644 --- a/testsuite/tests/typecheck/should_fail/T1899.stderr +++ b/testsuite/tests/typecheck/should_fail/T1899.stderr @@ -5,7 +5,7 @@ T1899.hs:12:29: the type signature for transRHS :: [a] -> Int -> Constraint a at T1899.hs:9:14 Relevant bindings include - transRHS :: [a] -> Int -> Constraint a (bound at T1899.hs:10:2) varSet :: [a] (bound at T1899.hs:10:11) + transRHS :: [a] -> Int -> Constraint a (bound at T1899.hs:10:2) In the first argument of ‛Prop’, namely ‛(Auxiliary undefined)’ In the expression: Prop (Auxiliary undefined) diff --git a/testsuite/tests/typecheck/should_fail/T2688.stderr b/testsuite/tests/typecheck/should_fail/T2688.stderr index 1729f65126..6ee894487d 100644 --- a/testsuite/tests/typecheck/should_fail/T2688.stderr +++ b/testsuite/tests/typecheck/should_fail/T2688.stderr @@ -9,8 +9,8 @@ T2688.hs:8:22: ‛v’ is a rigid type variable bound by the class declaration for ‛VectorSpace’ at T2688.hs:5:19 Relevant bindings include - (^/) :: v -> s -> v (bound at T2688.hs:8:5) - v :: v (bound at T2688.hs:8:5) s :: s (bound at T2688.hs:8:10) + v :: v (bound at T2688.hs:8:5) + (^/) :: v -> s -> v (bound at T2688.hs:8:5) In the second argument of ‛(/)’, namely ‛s’ In the second argument of ‛(*^)’, namely ‛(1 / s)’ diff --git a/testsuite/tests/typecheck/should_fail/T5689.stderr b/testsuite/tests/typecheck/should_fail/T5689.stderr index 6a67b2cac6..33d7fc9d6d 100644 --- a/testsuite/tests/typecheck/should_fail/T5689.stderr +++ b/testsuite/tests/typecheck/should_fail/T5689.stderr @@ -2,31 +2,31 @@ T5689.hs:10:36: Couldn't match expected type ‛Bool’ with actual type ‛t’ Relevant bindings include - r :: IORef (t -> t) (bound at T5689.hs:7:14) v :: t (bound at T5689.hs:10:28) + r :: IORef (t -> t) (bound at T5689.hs:7:14) In the expression: v In the expression: if v then False else True T5689.hs:10:43: Couldn't match expected type ‛t’ with actual type ‛Bool’ Relevant bindings include - r :: IORef (t -> t) (bound at T5689.hs:7:14) v :: t (bound at T5689.hs:10:28) + r :: IORef (t -> t) (bound at T5689.hs:7:14) In the expression: False In the expression: if v then False else True T5689.hs:10:54: Couldn't match expected type ‛t’ with actual type ‛Bool’ Relevant bindings include - r :: IORef (t -> t) (bound at T5689.hs:7:14) v :: t (bound at T5689.hs:10:28) + r :: IORef (t -> t) (bound at T5689.hs:7:14) In the expression: True In the expression: if v then False else True T5689.hs:14:23: Couldn't match expected type ‛t’ with actual type ‛Bool’ Relevant bindings include - r :: IORef (t -> t) (bound at T5689.hs:7:14) c :: t -> t (bound at T5689.hs:12:13) + r :: IORef (t -> t) (bound at T5689.hs:7:14) In the first argument of ‛c’, namely ‛True’ In the second argument of ‛($)’, namely ‛c True’ diff --git a/testsuite/tests/typecheck/should_fail/T5853.stderr b/testsuite/tests/typecheck/should_fail/T5853.stderr index 4fdef8cdd7..770b7bb621 100644 --- a/testsuite/tests/typecheck/should_fail/T5853.stderr +++ b/testsuite/tests/typecheck/should_fail/T5853.stderr @@ -10,8 +10,8 @@ T5853.hs:15:52: bound by the RULE "map/map" at T5853.hs:15:2-57 NB: ‛Subst’ is a type function, and may not be injective Relevant bindings include - xs :: Subst fa a (bound at T5853.hs:15:23) - g :: a -> Elem fa (bound at T5853.hs:15:21) f :: Elem fa -> b (bound at T5853.hs:15:19) + g :: a -> Elem fa (bound at T5853.hs:15:21) + xs :: Subst fa a (bound at T5853.hs:15:23) In the expression: (f . g) <$> xs When checking the transformation rule "map/map" diff --git a/testsuite/tests/typecheck/should_fail/T7264.stderr b/testsuite/tests/typecheck/should_fail/T7264.stderr index 71964fbb0e..6314b56f97 100644 --- a/testsuite/tests/typecheck/should_fail/T7264.stderr +++ b/testsuite/tests/typecheck/should_fail/T7264.stderr @@ -6,7 +6,7 @@ T7264.hs:13:19: Expected type: a -> Foo Actual type: (forall r. r -> String) -> Foo Relevant bindings include - mkFoo2 :: a -> Maybe Foo (bound at T7264.hs:13:1) val :: a (bound at T7264.hs:13:8) + mkFoo2 :: a -> Maybe Foo (bound at T7264.hs:13:1) In the first argument of ‛mmap’, namely ‛Foo’ In the expression: mmap Foo (Just val) diff --git a/testsuite/tests/typecheck/should_fail/T7453.stderr b/testsuite/tests/typecheck/should_fail/T7453.stderr index 9345595fb4..48fdcb70ba 100644 --- a/testsuite/tests/typecheck/should_fail/T7453.stderr +++ b/testsuite/tests/typecheck/should_fail/T7453.stderr @@ -6,10 +6,10 @@ T7453.hs:10:30: the type signature for z :: Id t1 at T7453.hs:8:16-19 Relevant bindings include - cast1 :: t -> a (bound at T7453.hs:7:1) - v :: t (bound at T7453.hs:7:7) - z :: Id t1 (bound at T7453.hs:9:11) aux :: Id t1 (bound at T7453.hs:10:21) + z :: Id t1 (bound at T7453.hs:9:11) + v :: t (bound at T7453.hs:7:7) + cast1 :: t -> a (bound at T7453.hs:7:1) In the first argument of ‛Id’, namely ‛v’ In the expression: Id v @@ -20,10 +20,10 @@ T7453.hs:16:33: the type signature for z :: () -> t2 at T7453.hs:14:16-22 Relevant bindings include - cast2 :: t -> t1 (bound at T7453.hs:13:1) - v :: t (bound at T7453.hs:13:7) - z :: () -> t2 (bound at T7453.hs:15:11) aux :: b -> t2 (bound at T7453.hs:16:21) + z :: () -> t2 (bound at T7453.hs:15:11) + v :: t (bound at T7453.hs:13:7) + cast2 :: t -> t1 (bound at T7453.hs:13:1) In the first argument of ‛const’, namely ‛v’ In the expression: const v @@ -34,10 +34,10 @@ T7453.hs:21:15: the type signature for z :: t2 at T7453.hs:20:16 Relevant bindings include - cast3 :: t -> t1 (bound at T7453.hs:19:1) - v :: t (bound at T7453.hs:19:7) - z :: t2 (bound at T7453.hs:21:11) aux :: forall b. b -> t2 (bound at T7453.hs:22:21) + z :: t2 (bound at T7453.hs:21:11) + v :: t (bound at T7453.hs:19:7) + cast3 :: t -> t1 (bound at T7453.hs:19:1) In the expression: v In an equation for ‛z’: z = v diff --git a/testsuite/tests/typecheck/should_fail/T7734.stderr b/testsuite/tests/typecheck/should_fail/T7734.stderr index 0748826acb..fc3348abb7 100644 --- a/testsuite/tests/typecheck/should_fail/T7734.stderr +++ b/testsuite/tests/typecheck/should_fail/T7734.stderr @@ -2,15 +2,15 @@ T7734.hs:4:13: Occurs check: cannot construct the infinite type: t2 ~ t2 -> t1 Relevant bindings include - f :: (t2 -> t1) -> t -> t1 (bound at T7734.hs:4:1) x :: t2 -> t1 (bound at T7734.hs:4:1) + f :: (t2 -> t1) -> t -> t1 (bound at T7734.hs:4:1) In the first argument of ‛x’, namely ‛x’ In the expression: x x T7734.hs:5:13: Occurs check: cannot construct the infinite type: t2 ~ t2 -> t1 Relevant bindings include - (&) :: (t2 -> t1) -> t -> t1 (bound at T7734.hs:5:1) x :: t2 -> t1 (bound at T7734.hs:5:5) + (&) :: (t2 -> t1) -> t -> t1 (bound at T7734.hs:5:1) In the first argument of ‛x’, namely ‛x’ In the expression: x x diff --git a/testsuite/tests/typecheck/should_fail/T7748a.stderr b/testsuite/tests/typecheck/should_fail/T7748a.stderr index f9204a1dd0..00f357147c 100644 --- a/testsuite/tests/typecheck/should_fail/T7748a.stderr +++ b/testsuite/tests/typecheck/should_fail/T7748a.stderr @@ -1,18 +1,18 @@ -
-T7748a.hs:14:24:
- Couldn't match expected type ‛a’
- with actual type ‛Maybe (Maybe (r -> ()))’
- ‛a’ is a rigid type variable bound by
- the type signature for test :: a -> r -> () at T7748a.hs:11:9
- Relevant bindings include
- test :: a -> r -> () (bound at T7748a.hs:12:1)
- zd :: a (bound at T7748a.hs:12:6)
- f :: r -> () (bound at T7748a.hs:13:8)
- g :: r -> () (bound at T7748a.hs:13:16)
- In the pattern: Nothing
- In a case alternative: Nothing -> const ()
- In the expression:
- case zd of {
- Nothing -> const ()
- Just Nothing -> const ()
- Just (Just p) -> p }
+ +T7748a.hs:14:24: + Couldn't match expected type ‛a’ + with actual type ‛Maybe (Maybe (r -> ()))’ + ‛a’ is a rigid type variable bound by + the type signature for test :: a -> r -> () at T7748a.hs:11:9 + Relevant bindings include + g :: r -> () (bound at T7748a.hs:13:16) + f :: r -> () (bound at T7748a.hs:13:8) + zd :: a (bound at T7748a.hs:12:6) + test :: a -> r -> () (bound at T7748a.hs:12:1) + In the pattern: Nothing + In a case alternative: Nothing -> const () + In the expression: + case zd of { + Nothing -> const () + Just Nothing -> const () + Just (Just p) -> p } diff --git a/testsuite/tests/typecheck/should_fail/T7869.stderr b/testsuite/tests/typecheck/should_fail/T7869.stderr index bdf814e78d..f9f8dbfcf1 100644 --- a/testsuite/tests/typecheck/should_fail/T7869.stderr +++ b/testsuite/tests/typecheck/should_fail/T7869.stderr @@ -21,8 +21,8 @@ T7869.hs:3:12: Expected type: [a1] -> b1 Actual type: [a] -> b Relevant bindings include - f :: [a] -> b (bound at T7869.hs:3:1) x :: [a1] (bound at T7869.hs:3:7) + f :: [a] -> b (bound at T7869.hs:3:1) In the expression: f x In the expression: (\ x -> f x) :: [a] -> b In an equation for ‛f’: f = (\ x -> f x) :: [a] -> b diff --git a/testsuite/tests/typecheck/should_fail/tcfail002.stderr b/testsuite/tests/typecheck/should_fail/tcfail002.stderr index f055d66eb6..67248f4064 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail002.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail002.stderr @@ -2,7 +2,7 @@ tcfail002.hs:4:7: Occurs check: cannot construct the infinite type: t ~ [t] Relevant bindings include - c :: [t] -> t (bound at tcfail002.hs:3:1) z :: [t] (bound at tcfail002.hs:4:3) + c :: [t] -> t (bound at tcfail002.hs:3:1) In the expression: z In an equation for ‛c’: c z = z diff --git a/testsuite/tests/typecheck/should_fail/tcfail004.stderr b/testsuite/tests/typecheck/should_fail/tcfail004.stderr index bf439ab343..fd73db69ae 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail004.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail004.stderr @@ -3,7 +3,7 @@ tcfail004.hs:3:9: Couldn't match expected type ‛(t, t3)’ with actual type ‛(t0, t1, t2)’ Relevant bindings include - g :: t3 (bound at tcfail004.hs:3:4) f :: t (bound at tcfail004.hs:3:2) + g :: t3 (bound at tcfail004.hs:3:4) In the expression: (1, 2, 3) In a pattern binding: (f, g) = (1, 2, 3) diff --git a/testsuite/tests/typecheck/should_fail/tcfail005.stderr b/testsuite/tests/typecheck/should_fail/tcfail005.stderr index ebb2999f79..401bc35194 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail005.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail005.stderr @@ -2,7 +2,7 @@ tcfail005.hs:3:9: Couldn't match expected type ‛[t]’ with actual type ‛(t0, Char)’ Relevant bindings include - i :: [t] (bound at tcfail005.hs:3:4) h :: t (bound at tcfail005.hs:3:2) + i :: [t] (bound at tcfail005.hs:3:4) In the expression: (1, 'a') In a pattern binding: (h : i) = (1, 'a') diff --git a/testsuite/tests/typecheck/should_fail/tcfail014.stderr b/testsuite/tests/typecheck/should_fail/tcfail014.stderr index d34411af96..79af8623e1 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail014.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail014.stderr @@ -2,7 +2,7 @@ tcfail014.hs:5:33: Occurs check: cannot construct the infinite type: t8 ~ t8 -> t7 Relevant bindings include - h :: (t8 -> t7) -> t7 (bound at tcfail014.hs:5:25) z :: t8 -> t7 (bound at tcfail014.hs:5:27) + h :: (t8 -> t7) -> t7 (bound at tcfail014.hs:5:25) In the first argument of ‛z’, namely ‛z’ In the expression: z z diff --git a/testsuite/tests/typecheck/should_fail/tcfail016.stderr b/testsuite/tests/typecheck/should_fail/tcfail016.stderr index a18f8032c1..3b8e2a9712 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail016.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail016.stderr @@ -4,9 +4,9 @@ tcfail016.hs:9:20: Expected type: Expr t Actual type: AnnExpr t Relevant bindings include - g :: Expr t -> [[Char]] (bound at tcfail016.hs:8:1) - e1 :: AnnExpr t (bound at tcfail016.hs:9:8) e2 :: AnnExpr t (bound at tcfail016.hs:9:11) + e1 :: AnnExpr t (bound at tcfail016.hs:9:8) + g :: Expr t -> [[Char]] (bound at tcfail016.hs:8:1) In the first argument of ‛g’, namely ‛e1’ In the first argument of ‛(++)’, namely ‛(g e1)’ @@ -15,8 +15,8 @@ tcfail016.hs:9:28: Expected type: Expr t Actual type: AnnExpr t Relevant bindings include - g :: Expr t -> [[Char]] (bound at tcfail016.hs:8:1) - e1 :: AnnExpr t (bound at tcfail016.hs:9:8) e2 :: AnnExpr t (bound at tcfail016.hs:9:11) + e1 :: AnnExpr t (bound at tcfail016.hs:9:8) + g :: Expr t -> [[Char]] (bound at tcfail016.hs:8:1) In the first argument of ‛g’, namely ‛e2’ In the second argument of ‛(++)’, namely ‛(g e2)’ diff --git a/testsuite/tests/typecheck/should_fail/tcfail032.stderr b/testsuite/tests/typecheck/should_fail/tcfail032.stderr index 56e4a791ad..75d64ee76b 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail032.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail032.stderr @@ -6,7 +6,7 @@ tcfail032.hs:14:8: an expression type signature: Eq a1 => a1 -> Int at tcfail032.hs:14:8-30 Relevant bindings include - f :: t -> a -> Int (bound at tcfail032.hs:14:1) x :: t (bound at tcfail032.hs:14:3) + f :: t -> a -> Int (bound at tcfail032.hs:14:1) In the expression: (x :: Eq a => a -> Int) In an equation for ‛f’: f x = (x :: Eq a => a -> Int) diff --git a/testsuite/tests/typecheck/should_fail/tcfail033.stderr b/testsuite/tests/typecheck/should_fail/tcfail033.stderr index 3a9496ead1..ea517ea7b4 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail033.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail033.stderr @@ -2,8 +2,8 @@ tcfail033.hs:4:12: Occurs check: cannot construct the infinite type: t ~ (t, t1) Relevant bindings include - buglet :: [(t, t1)] (bound at tcfail033.hs:4:1) - x :: t (bound at tcfail033.hs:4:17) y :: t1 (bound at tcfail033.hs:4:19) + x :: t (bound at tcfail033.hs:4:17) + buglet :: [(t, t1)] (bound at tcfail033.hs:4:1) In the expression: x In the expression: [x | (x, y) <- buglet] diff --git a/testsuite/tests/typecheck/should_fail/tcfail043.stderr b/testsuite/tests/typecheck/should_fail/tcfail043.stderr index 9be218f040..df750a4a3c 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail043.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail043.stderr @@ -3,9 +3,9 @@ tcfail043.hs:38:17: No instance for (Ord_ a0) arising from a use of ‛gt’ The type variable ‛a0’ is ambiguous Relevant bindings include - search :: a0 -> [a0] -> Bool (bound at tcfail043.hs:37:1) - a :: a0 (bound at tcfail043.hs:38:6) bs :: [a0] (bound at tcfail043.hs:38:8) + a :: a0 (bound at tcfail043.hs:38:6) + search :: a0 -> [a0] -> Bool (bound at tcfail043.hs:37:1) Note: there is a potential instance available: instance Ord_ Int -- Defined at tcfail043.hs:34:10 In the expression: gt (hd bs) a @@ -25,9 +25,9 @@ tcfail043.hs:40:25: No instance for (Eq_ a0) arising from a use of ‛eq’ The type variable ‛a0’ is ambiguous Relevant bindings include - search :: a0 -> [a0] -> Bool (bound at tcfail043.hs:37:1) - a :: a0 (bound at tcfail043.hs:38:6) bs :: [a0] (bound at tcfail043.hs:38:8) + a :: a0 (bound at tcfail043.hs:38:6) + search :: a0 -> [a0] -> Bool (bound at tcfail043.hs:37:1) Note: there are several potential instances: instance Eq_ a => Eq_ [a] -- Defined at tcfail043.hs:23:10 instance Eq_ Int -- Defined at tcfail043.hs:20:10 diff --git a/testsuite/tests/typecheck/should_fail/tcfail065.stderr b/testsuite/tests/typecheck/should_fail/tcfail065.stderr index 75aad77065..89ac58145a 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail065.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail065.stderr @@ -7,7 +7,7 @@ tcfail065.hs:29:20: ‛x’ is a rigid type variable bound by the instance declaration at tcfail065.hs:28:10 Relevant bindings include - setX :: x1 -> X x -> X x (bound at tcfail065.hs:29:3) x :: x1 (bound at tcfail065.hs:29:8) + setX :: x1 -> X x -> X x (bound at tcfail065.hs:29:3) In the first argument of ‛X’, namely ‛x’ In the expression: X x diff --git a/testsuite/tests/typecheck/should_fail/tcfail068.stderr b/testsuite/tests/typecheck/should_fail/tcfail068.stderr index e50e3da859..8b2cd42158 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail068.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail068.stderr @@ -39,9 +39,9 @@ tcfail068.hs:19:21: Expected type: STArray s1 (Int, Int) a Actual type: IndTree s a Relevant bindings include + arr :: IndTree s a (bound at tcfail068.hs:17:11) itiap :: (Int, Int) -> (a -> a) -> IndTree s a -> IndTree s a (bound at tcfail068.hs:17:1) - arr :: IndTree s a (bound at tcfail068.hs:17:11) In the first argument of ‛readSTArray’, namely ‛arr’ In the first argument of ‛(>>=)’, namely ‛readSTArray arr i’ @@ -63,14 +63,14 @@ tcfail068.hs:24:35: Expected type: GHC.ST.ST s1 (IndTree s a) Actual type: GHC.ST.ST s (IndTree s a) Relevant bindings include + itrap' :: Int -> Int -> GHC.ST.ST s (IndTree s a) + (bound at tcfail068.hs:26:9) + itrapsnd :: Int -> Int -> GHC.ST.ST s (IndTree s a) + (bound at tcfail068.hs:29:9) + arr :: IndTree s a (bound at tcfail068.hs:24:23) itrap :: ((Int, Int), (Int, Int)) -> (a -> a) -> IndTree s a -> IndTree s a (bound at tcfail068.hs:24:1) - arr :: IndTree s a (bound at tcfail068.hs:24:23) - itrapsnd :: Int -> Int -> GHC.ST.ST s (IndTree s a) - (bound at tcfail068.hs:29:9) - itrap' :: Int -> Int -> GHC.ST.ST s (IndTree s a) - (bound at tcfail068.hs:26:9) In the first argument of ‛runST’, namely ‛(itrap' i k)’ In the expression: runST (itrap' i k) @@ -104,6 +104,11 @@ tcfail068.hs:36:46: Expected type: GHC.ST.ST s1 (c, IndTree s b) Actual type: GHC.ST.ST s (c, IndTree s b) Relevant bindings include + itrapstate' :: Int -> Int -> c -> GHC.ST.ST s (c, IndTree s b) + (bound at tcfail068.hs:38:9) + itrapstatesnd :: Int -> Int -> c -> GHC.ST.ST s (c, IndTree s b) + (bound at tcfail068.hs:41:9) + arr :: IndTree s b (bound at tcfail068.hs:36:34) itrapstate :: ((Int, Int), (Int, Int)) -> (a -> b -> (a, b)) -> ((Int, Int) -> c -> a) @@ -112,10 +117,5 @@ tcfail068.hs:36:46: -> IndTree s b -> (c, IndTree s b) (bound at tcfail068.hs:36:1) - arr :: IndTree s b (bound at tcfail068.hs:36:34) - itrapstatesnd :: Int -> Int -> c -> GHC.ST.ST s (c, IndTree s b) - (bound at tcfail068.hs:41:9) - itrapstate' :: Int -> Int -> c -> GHC.ST.ST s (c, IndTree s b) - (bound at tcfail068.hs:38:9) In the first argument of ‛runST’, namely ‛(itrapstate' i k s)’ In the expression: runST (itrapstate' i k s) diff --git a/testsuite/tests/typecheck/should_fail/tcfail076.stderr b/testsuite/tests/typecheck/should_fail/tcfail076.stderr index 6ae9951e71..d6d23eb9c2 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail076.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail076.stderr @@ -10,7 +10,7 @@ tcfail076.hs:18:82: Expected type: m res1 Actual type: m res Relevant bindings include - cont :: a -> m res (bound at tcfail076.hs:18:37) cont' :: b -> m res1 (bound at tcfail076.hs:18:73) + cont :: a -> m res (bound at tcfail076.hs:18:37) In the expression: cont a In the first argument of ‛KContT’, namely ‛(\ cont' -> cont a)’ diff --git a/testsuite/tests/typecheck/should_fail/tcfail099.stderr b/testsuite/tests/typecheck/should_fail/tcfail099.stderr index 3cedf90a5c..73293eb6b6 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail099.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail099.stderr @@ -8,8 +8,8 @@ tcfail099.hs:9:20: in an equation for ‛call’ at tcfail099.hs:9:7-9 Relevant bindings include - call :: DS -> t -> Int (bound at tcfail099.hs:9:1) - f :: a -> Int (bound at tcfail099.hs:9:9) arg :: t (bound at tcfail099.hs:9:12) + f :: a -> Int (bound at tcfail099.hs:9:9) + call :: DS -> t -> Int (bound at tcfail099.hs:9:1) In the first argument of ‛f’, namely ‛arg’ In the expression: f arg diff --git a/testsuite/tests/typecheck/should_fail/tcfail103.stderr b/testsuite/tests/typecheck/should_fail/tcfail103.stderr index 928939e737..4f1315331d 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail103.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail103.stderr @@ -8,8 +8,8 @@ tcfail103.hs:15:23: Expected type: STRef s Int Actual type: STRef t Int Relevant bindings include - f :: ST t Int (bound at tcfail103.hs:11:1) - v :: STRef t Int (bound at tcfail103.hs:12:5) g :: ST s Int (bound at tcfail103.hs:15:9) + v :: STRef t Int (bound at tcfail103.hs:12:5) + f :: ST t Int (bound at tcfail103.hs:11:1) In the first argument of ‛readSTRef’, namely ‛v’ In the expression: readSTRef v diff --git a/testsuite/tests/typecheck/should_fail/tcfail122.stderr b/testsuite/tests/typecheck/should_fail/tcfail122.stderr index 9e07184677..901ceb84d1 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail122.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail122.stderr @@ -1,18 +1,17 @@ -
-tcfail122.hs:8:9:
- Kind incompatibility when matching types:
- c0 :: (* -> *) -> *
- a0 :: * -> *
- Expected type: a0 b0
- Actual type: c0 d0
- Relevant bindings include
- foo :: [a0 b0] (bound at tcfail122.hs:7:1)
- In the expression:
- undefined :: forall (c :: (* -> *) -> *) (d :: * -> *). c d
- In the expression:
- [undefined :: forall a b. a b,
- undefined :: forall (c :: (* -> *) -> *) (d :: * -> *). c d]
- In an equation for ‛foo’:
- foo
- = [undefined :: forall a b. a b,
- undefined :: forall (c :: (* -> *) -> *) (d :: * -> *). c d]
+ +tcfail122.hs:8:9: + Kind incompatibility when matching types: + c0 :: (* -> *) -> * + a :: * -> * + Expected type: a b + Actual type: c0 d0 + Relevant bindings include foo :: [a b] (bound at tcfail122.hs:7:1) + In the expression: + undefined :: forall (c :: (* -> *) -> *) (d :: * -> *). c d + In the expression: + [undefined :: forall a b. a b, + undefined :: forall (c :: (* -> *) -> *) (d :: * -> *). c d] + In an equation for ‛foo’: + foo + = [undefined :: forall a b. a b, + undefined :: forall (c :: (* -> *) -> *) (d :: * -> *). c d] diff --git a/testsuite/tests/typecheck/should_fail/tcfail131.stderr b/testsuite/tests/typecheck/should_fail/tcfail131.stderr index c664ba45e4..da75512b9e 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail131.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail131.stderr @@ -7,7 +7,7 @@ tcfail131.hs:7:9: ‛b’ is a rigid type variable bound by the type signature for g :: Num b => b -> b at tcfail131.hs:6:8 Relevant bindings include - g :: b -> b (bound at tcfail131.hs:7:3) x :: b (bound at tcfail131.hs:7:5) + g :: b -> b (bound at tcfail131.hs:7:3) In the expression: f x x In an equation for ‛g’: g x = f x x diff --git a/testsuite/tests/typecheck/should_fail/tcfail140.stderr b/testsuite/tests/typecheck/should_fail/tcfail140.stderr index aff19cb16a..2ed025a870 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail140.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail140.stderr @@ -19,8 +19,8 @@ tcfail140.hs:12:10: tcfail140.hs:14:15: Couldn't match expected type ‛a -> b’ with actual type ‛Int’ Relevant bindings include - bot :: [a] -> [b] (bound at tcfail140.hs:14:1) xs :: [a] (bound at tcfail140.hs:14:5) + bot :: [a] -> [b] (bound at tcfail140.hs:14:1) The operator ‛f’ takes two arguments, but its type ‛Int -> Int’ has only one In the first argument of ‛map’, namely ‛(3 `f`)’ diff --git a/testsuite/tests/typecheck/should_fail/tcfail153.stderr b/testsuite/tests/typecheck/should_fail/tcfail153.stderr index 6b360719d1..50908ec677 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail153.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail153.stderr @@ -6,8 +6,8 @@ tcfail153.hs:6:7: Expected type: [a] Actual type: [Bool] Relevant bindings include - f :: a -> [a] (bound at tcfail153.hs:6:1) x :: a (bound at tcfail153.hs:6:3) + f :: a -> [a] (bound at tcfail153.hs:6:1) In the expression: g x In an equation for ‛f’: f x diff --git a/testsuite/tests/typecheck/should_fail/tcfail179.stderr b/testsuite/tests/typecheck/should_fail/tcfail179.stderr index 2892bddbf0..db5966f6f9 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail179.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail179.stderr @@ -9,9 +9,9 @@ tcfail179.hs:14:39: ‛s’ is a rigid type variable bound by the type signature for run :: T s -> Int at tcfail179.hs:12:8 Relevant bindings include - run :: T s -> Int (bound at tcfail179.hs:13:1) - ts :: T s (bound at tcfail179.hs:13:5) - g :: s -> (x -> s) -> (x, s, Int) (bound at tcfail179.hs:14:16) x :: x (bound at tcfail179.hs:14:26) + g :: s -> (x -> s) -> (x, s, Int) (bound at tcfail179.hs:14:16) + ts :: T s (bound at tcfail179.hs:13:5) + run :: T s -> Int (bound at tcfail179.hs:13:1) In the first argument of ‛g’, namely ‛x’ In the expression: g x id diff --git a/testsuite/tests/typecheck/should_fail/tcfail198.stderr b/testsuite/tests/typecheck/should_fail/tcfail198.stderr index f8ec0405da..62e9eeed15 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail198.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail198.stderr @@ -6,8 +6,8 @@ tcfail198.hs:6:36: an expression type signature: a1 at tcfail198.hs:6:36-41 Relevant bindings include - f3 :: [a] -> [a] (bound at tcfail198.hs:6:6) - x :: a (bound at tcfail198.hs:6:19) xs :: [a] (bound at tcfail198.hs:6:21) + x :: a (bound at tcfail198.hs:6:19) + f3 :: [a] -> [a] (bound at tcfail198.hs:6:6) In the expression: x :: a In the second argument of ‛(++)’, namely ‛[x :: a]’ diff --git a/testsuite/tests/typecheck/should_fail/tcfail200.stderr b/testsuite/tests/typecheck/should_fail/tcfail200.stderr index f6d80a249a..e70a55cef9 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail200.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail200.stderr @@ -1,11 +1,10 @@ -
-tcfail200.hs:5:15:
- Kind incompatibility when matching types:
- t0 :: *
- GHC.Prim.Int# :: #
- Relevant bindings include
- f :: (t0, Char) (bound at tcfail200.hs:5:1)
- x :: (t0, Char) (bound at tcfail200.hs:5:9)
- In the expression: 1#
- In the expression: (1#, 'c')
- In an equation for ‛x’: x = (1#, 'c')
+ +tcfail200.hs:5:15: + Kind incompatibility when matching types: + t1 :: * + GHC.Prim.Int# :: # + Relevant bindings include + x :: (t1, Char) (bound at tcfail200.hs:5:9) + In the expression: 1# + In the expression: (1#, 'c') + In an equation for ‛x’: x = (1#, 'c') diff --git a/testsuite/tests/typecheck/should_fail/tcfail201.stderr b/testsuite/tests/typecheck/should_fail/tcfail201.stderr index ada710e43b..23d22744eb 100644 --- a/testsuite/tests/typecheck/should_fail/tcfail201.stderr +++ b/testsuite/tests/typecheck/should_fail/tcfail201.stderr @@ -7,10 +7,10 @@ tcfail201.hs:17:27: -> (forall g. g -> c g) -> a -> c a at tcfail201.hs:15:12 Relevant bindings include + hsDoc :: a (bound at tcfail201.hs:16:13) gfoldl' :: (forall a1 b. c (a1 -> b) -> a1 -> c b) -> (forall g. g -> c g) -> a -> c a (bound at tcfail201.hs:16:1) - hsDoc :: a (bound at tcfail201.hs:16:13) In the pattern: DocEmpty In a case alternative: DocEmpty -> z DocEmpty In the expression: |