summaryrefslogtreecommitdiff
path: root/testsuite/tests/typecheck/should_fail/T15629.stderr
blob: ce77bb04a37452f97d1b1dc563aff3624ac04e56 (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

T15629.hs:26:35: error:
    • Expected kind ‘x1 ~> F x1 ab1’,
        but ‘F1Sym :: x ~> F x z’ has kind ‘x1 ~> F x1 z’
    • In the first argument of ‘Comp’, namely ‘(F1Sym :: x ~> F x z)’
      In the first argument of ‘Proxy’, namely
        ‘((Comp (F1Sym :: x ~> F x z) F2Sym) :: F x ab ~> F x ab)’
      In the type signature:
        g :: forall ab.
             Proxy ((Comp (F1Sym :: x ~> F x z) F2Sym) :: F x ab ~> F x ab)

T15629.hs:27:9: error:
    • Couldn't match kind ‘ab1’ with ‘z’
      ‘ab1’ is a rigid type variable bound by
        the type signature for:
          g :: forall z1 ab1. Proxy (Comp F1Sym F2Sym)
        at T15629.hs:26:5-82
      ‘z’ is a rigid type variable bound by
        the type signature for:
          g :: forall z1 ab1. Proxy (Comp F1Sym F2Sym)
        at T15629.hs:26:5-82
      When matching types
        f0 :: x ~> F x ab
        F1Sym :: TyFun x1 (F x1 z) -> *
      Expected type: Proxy (Comp F1Sym F2Sym)
        Actual type: Proxy (Comp f0 F2Sym)
    • In the expression: sg Proxy Proxy
      In an equation for ‘g’: g = sg Proxy Proxy
      In an equation for ‘f’:
          f _
            = ()
            where
                g ::
                  forall ab.
                  Proxy ((Comp (F1Sym :: x ~> F x z) F2Sym) :: F x ab ~> F x ab)
                g = sg Proxy Proxy
    • Relevant bindings include
        g :: Proxy (Comp F1Sym F2Sym) (bound at T15629.hs:27:5)
        f :: Proxy x1 -> () (bound at T15629.hs:24:1)