summaryrefslogtreecommitdiff
path: root/testsuite/tests/polykinds/T12593.stderr
blob: 4dda0cddd5fbaa6009e3a375eeeea6cdbe708804 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86

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) -> (k2 -> k3 -> *) -> *)
       -> 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) -> (k2 -> k3 -> *) -> *’
    • 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)
                            -> (k2 -> k3 -> *) -> *)
                           -> Constraint’
                     with ‘*’
      When matching kinds
        k :: (((k0 -> k1 -> *) -> Constraint) -> (k2 -> k3 -> *) -> *)
             -> Constraint
        k2 :: *
    • 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)
                           -> (k2 -> k3 -> *) -> *’
                     with ‘*’
      When matching kinds
        k4 :: ((k0 -> k1 -> *) -> Constraint) -> (k2 -> k3 -> *) -> *
        k3 :: *
    • 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)
                            -> (k2 -> k3 -> *) -> *)
                           -> Constraint’
                     with ‘*’
      When matching kinds
        k :: (((k0 -> k1 -> *) -> Constraint) -> (k2 -> k3 -> *) -> *)
             -> Constraint
        k0 :: *
    • 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)
                           -> (k2 -> k3 -> *) -> *’
                     with ‘*’
      When matching kinds
        k4 :: ((k0 -> k1 -> *) -> Constraint) -> (k2 -> k3 -> *) -> *
        k1 :: *
    • 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