summaryrefslogtreecommitdiff
path: root/testsuite/tests/indexed-types/should_fail/T4179.stderr
blob: 50c1ad53657817b91a9709f0a085af9826e137ea (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

T4179.hs:26:16:
    Could not deduce (DoC (x (A2 (FCon x) -> A3 (FCon x))))
      arising from a use of `op'
    from the context (Functor x, DoC (FCon x))
      bound by the type signature for
                 fCon :: (Functor x, DoC (FCon x)) =>
                         Con x -> A2 (FCon x) -> A3 (FCon x)
      at T4179.hs:26:1-17
    Possible fix:
      add (DoC (x (A2 (FCon x) -> A3 (FCon x)))) to the context of
        the type signature for
          fCon :: (Functor x, DoC (FCon x)) =>
                  Con x -> A2 (FCon x) -> A3 (FCon x)
      or add an instance declaration for
         (DoC (x (A2 (FCon x) -> A3 (FCon x))))
    In the first argument of `foldDoC', namely `op'
    In the expression: foldDoC op
    In an equation for `fCon': fCon = foldDoC op

T4179.hs:26:16:
    Could not deduce (A2 (x (A2 (FCon x) -> A3 (FCon x)))
                        ~
                      A2 (FCon x))
    from the context (Functor x, DoC (FCon x))
      bound by the type signature for
                 fCon :: (Functor x, DoC (FCon x)) =>
                         Con x -> A2 (FCon x) -> A3 (FCon x)
      at T4179.hs:26:1-17
    NB: `A2' is a type function, and may not be injective
    Expected type: A2 (FCon x) -> A3 (FCon x)
      Actual type: A2 (x (A2 (FCon x) -> A3 (FCon x)))
                   -> A3 (x (A2 (FCon x) -> A3 (FCon x)))
    Expected type: x (A2 (FCon x) -> A3 (FCon x))
                   -> A2 (FCon x)
                   -> A3 (FCon x)
      Actual type: x (A2 (FCon x) -> A3 (FCon x))
                   -> A2 (x (A2 (FCon x) -> A3 (FCon x)))
                   -> A3 (x (A2 (FCon x) -> A3 (FCon x)))
    In the first argument of `foldDoC', namely `op'
    In the expression: foldDoC op

T4179.hs:26:16:
    Could not deduce (A3 (x (A2 (FCon x) -> A3 (FCon x)))
                        ~
                      A3 (FCon x))
    from the context (Functor x, DoC (FCon x))
      bound by the type signature for
                 fCon :: (Functor x, DoC (FCon x)) =>
                         Con x -> A2 (FCon x) -> A3 (FCon x)
      at T4179.hs:26:1-17
    NB: `A3' is a type function, and may not be injective
    Expected type: A2 (FCon x) -> A3 (FCon x)
      Actual type: A2 (x (A2 (FCon x) -> A3 (FCon x)))
                   -> A3 (x (A2 (FCon x) -> A3 (FCon x)))
    Expected type: x (A2 (FCon x) -> A3 (FCon x))
                   -> A2 (FCon x)
                   -> A3 (FCon x)
      Actual type: x (A2 (FCon x) -> A3 (FCon x))
                   -> A2 (x (A2 (FCon x) -> A3 (FCon x)))
                   -> A3 (x (A2 (FCon x) -> A3 (FCon x)))
    In the first argument of `foldDoC', namely `op'
    In the expression: foldDoC op