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

T7453.hs:10:30: error:
    • Couldn't match expected type ‘t1’ with actual type ‘t’
        because type variable ‘t1’ would escape its scope
      This (rigid, skolem) type variable is bound by
        the type signature for:
          z :: Id t1
        at T7453.hs:8:11-19
    • In the first argument of ‘Id’, namely ‘v’
      In the expression: Id v
    • Relevant bindings include
        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)

T7453.hs:16:33: error:
    • Couldn't match expected type ‘t2’ with actual type ‘t’
        because type variable ‘t2’ would escape its scope
      This (rigid, skolem) type variable is bound by
        the type signature for:
          z :: () -> t2
        at T7453.hs:14:11-22
    • In the first argument of ‘const’, namely ‘v’
      In the expression: const v
    • Relevant bindings include
        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)

T7453.hs:21:15: error:
    • Couldn't match expected type ‘t2’ with actual type ‘t’
        because type variable ‘t2’ would escape its scope
      This (rigid, skolem) type variable is bound by
        the type signature for:
          z :: t2
        at T7453.hs:20:11-16
    • In the expression: v
      In an equation for ‘z’:
          z = v
            where
                aux = const v
    • Relevant bindings include
        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)