tc141.stderr 1.74 KB
Newer Older
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

tc141.hs:11:12: error:
    • You cannot bind scoped type variable ‘a’
        in a pattern binding signature
    • In the pattern: p :: a
      In the pattern: (p :: a, q :: a)
      In a pattern binding: (p :: a, q :: a) = x

tc141.hs:11:31: error:
    • Couldn't match expected type ‘a2’ with actual type ‘a1’
        because type variable ‘a2’ would escape its scope
      This (rigid, skolem) type variable is bound by
        an expression type signature:
          a2
        at tc141.hs:11:34
    • In the expression: q :: a
      In the expression: (q :: a, p)
      In the expression: let (p :: a, q :: a) = x in (q :: a, p)
    • Relevant bindings include
        p :: a1 (bound at tc141.hs:11:12)
        q :: a1 (bound at tc141.hs:11:17)
        x :: (a1, a1) (bound at tc141.hs:11:3)
        f :: (a1, a1) -> (a, a1) (bound at tc141.hs:11:1)

tc141.hs:13:13: error:
    • You cannot bind scoped type variable ‘a’
        in a pattern binding signature
    • In the pattern: y :: a
      In a pattern binding: y :: a = a
      In the expression:
        let y :: a = a in
        let
          v :: a
          v = b
        in v

tc141.hs:15:18: error:
38
    • Couldn't match expected type ‘a2’ with actual type ‘p’
39
        because type variable ‘a2’ would escape its scope
40
41
      This (rigid, skolem) type variable is bound by
        the type signature for:
42
          v :: a2
43
44
45
46
47
48
49
50
51
        at tc141.hs:14:14-19
    • In the expression: b
      In an equation for ‘v’: v = b
      In the expression:
        let
          v :: a
          v = b
        in v
    • Relevant bindings include
52
        v :: a2 (bound at tc141.hs:15:14)
53
54
        b :: p (bound at tc141.hs:13:5)
        g :: a1 -> p -> a (bound at tc141.hs:13:1)