Fail fast in solveLocalEqualities
[ghc.git] / testsuite / tests / polykinds / T12593.stderr
index e150299..fcf194b 100644 (file)
 
-T12593.hs:11:16: error:
-    • Expected kind ‘k0 -> k1 -> *’, but ‘Free k k1 k2 p’ has kind ‘*’
-    • In the type signature:
-        run :: k2 q =>
-               Free k k1 k2 p a b
-               -> (forall (c :: k) (d :: k1). p c d -> q c d) -> q a b
-
 T12593.hs:12:31: error:
     • Expecting one more argument to ‘k’
       Expected a type, but
       ‘k’ has kind
-      ‘(((k0 -> k1 -> *) -> Constraint) -> (k3 -> k4 -> *) -> *)
-       -> Constraint’
+      ‘((k0 -> Constraint) -> k1 -> *) -> Constraint’
     • In the kind ‘k’
       In the type signature:
         run :: k2 q =>
                Free k k1 k2 p a b
                -> (forall (c :: k) (d :: k1). p c d -> q c d) -> q a b
-
-T12593.hs:12:40: error:
-    • Expecting two more arguments to ‘k1’
-      Expected a type, but
-      ‘k1’ has kind
-      ‘((k0 -> k1 -> *) -> Constraint) -> (k3 -> k4 -> *) -> *’
-    • In the kind ‘k1’
-      In the type signature:
-        run :: k2 q =>
-               Free k k1 k2 p a b
-               -> (forall (c :: k) (d :: k1). p c d -> q c d) -> q a b
-
-T12593.hs:12:47: error:
-    • Couldn't match kind ‘(((k0 -> k1 -> *) -> Constraint)
-                            -> (k3 -> k4 -> *) -> *)
-                           -> Constraint’
-                     with ‘*’
-      When matching kinds
-        k3 :: *
-        k6 :: (((k0 -> k1 -> *) -> Constraint) -> (k3 -> k4 -> *) -> *)
-              -> Constraint
-    • In the first argument of ‘p’, namely ‘c’
-      In the type signature:
-        run :: k2 q =>
-               Free k k1 k2 p a b
-               -> (forall (c :: k) (d :: k1). p c d -> q c d) -> q a b
-
-T12593.hs:12:49: error:
-    • Couldn't match kind ‘((k0 -> k1 -> *) -> Constraint)
-                           -> (k3 -> k4 -> *) -> *’
-                     with ‘*’
-      When matching kinds
-        k4 :: *
-        k7 :: ((k0 -> k1 -> *) -> Constraint) -> (k3 -> k4 -> *) -> *
-    • In the second argument of ‘p’, namely ‘d’
-      In the type signature:
-        run :: k2 q =>
-               Free k k1 k2 p a b
-               -> (forall (c :: k) (d :: k1). p c d -> q c d) -> q a b
-
-T12593.hs:12:56: error:
-    • Couldn't match kind ‘(((k0 -> k1 -> *) -> Constraint)
-                            -> (k3 -> k4 -> *) -> *)
-                           -> Constraint’
-                     with ‘*’
-      When matching kinds
-        k0 :: *
-        k6 :: (((k0 -> k1 -> *) -> Constraint) -> (k3 -> k4 -> *) -> *)
-              -> Constraint
-    • In the first argument of ‘q’, namely ‘c’
-      In the type signature:
-        run :: k2 q =>
-               Free k k1 k2 p a b
-               -> (forall (c :: k) (d :: k1). p c d -> q c d) -> q a b
-
-T12593.hs:12:58: error:
-    • Couldn't match kind ‘((k0 -> k1 -> *) -> Constraint)
-                           -> (k3 -> k4 -> *) -> *’
-                     with ‘*’
-      When matching kinds
-        k1 :: *
-        k7 :: ((k0 -> k1 -> *) -> Constraint) -> (k3 -> k4 -> *) -> *
-    • In the second argument of ‘q’, namely ‘d’
-      In the type signature:
-        run :: k2 q =>
-               Free k k1 k2 p a b
-               -> (forall (c :: k) (d :: k1). p c d -> q c d) -> q a b
-
-T12593.hs:14:6: error:
-    • Couldn't match type ‘Free k2 p0’ with ‘Free k6 k7 k8 p’
-      Expected type: Free k6 k7 k8 p a b
-        Actual type: Free k2 p0 a b
-    • In the pattern: Free cat
-      In an equation for ‘run’: run (Free cat) = cat
-    • Relevant bindings include
-        run :: Free k k4 k8 p a b
-               -> (forall (c :: k) (d :: k4). p c d -> q c d) -> q a b
-          (bound at T12593.hs:14:1)
-
-T12593.hs:14:18: error:
-    • Couldn't match kind ‘*’
-                     with ‘(((k3 -> k4 -> *) -> Constraint) -> (k3 -> k4 -> *) -> *)
-                           -> Constraint’
-      When matching kinds
-        k0 :: *
-        k6 :: (((k0 -> k1 -> *) -> Constraint) -> (k3 -> k4 -> *) -> *)
-              -> Constraint
-    • In the expression: cat
-      In an equation for ‘run’: run (Free cat) = cat
-    • Relevant bindings include
-        cat :: forall (q :: k0 -> k1 -> *).
-               k2 q =>
-               (forall (c :: k0) (d :: k1). p0 c d -> q c d) -> q a b
-          (bound at T12593.hs:14:11)
-        run :: Free k k4 k8 p a b
-               -> (forall (c :: k) (d :: k4). p c d -> q c d) -> q a b
-          (bound at T12593.hs:14:1)