blob: 9bb1737fdaedcc182cc7131605b64666a3603925 (
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
|
simpl017.hs:44:12:
Couldn't match expected type ‛forall v. [E m i] -> E' v m a’
with actual type ‛[E m i] -> E' v0 m a’
Relevant bindings include
liftArray :: arr i a -> E m (forall v. [E m i] -> E' v m a)
(bound at simpl017.hs:39:1)
a :: arr i a (bound at simpl017.hs:39:11)
ix :: [E m i] -> m i (bound at simpl017.hs:41:9)
f :: [E m i] -> E' v0 m a (bound at simpl017.hs:43:9)
In the first argument of ‛return’, namely ‛f’
In a stmt of a 'do' block: return f
simpl017.hs:63:5:
Couldn't match type ‛forall v.
[E' RValue (ST s) Int] -> E' v (ST s) Int’
with ‛[E (ST t0) Int] -> E' RValue (ST s) Int’
Expected type: [E (ST t0) Int] -> E (ST s) Int
Actual type: forall v. [E (ST s) Int] -> E' v (ST s) Int
Relevant bindings include
foo :: STArray s Int Int -> ST s Int (bound at simpl017.hs:59:1)
ma :: STArray s Int Int (bound at simpl017.hs:59:5)
a :: forall v. [E (ST s) Int] -> E' v (ST s) Int
(bound at simpl017.hs:60:5)
The function ‛a’ is applied to one argument,
but its type ‛forall v. [E (ST s) Int] -> E' v (ST s) Int’ has none
In the first argument of ‛plus’, namely ‛a [one]’
In a stmt of a 'do' block: a [one] `plus` a [one]
simpl017.hs:63:19:
Couldn't match type ‛forall v.
[E' RValue (ST s) Int] -> E' v (ST s) Int’
with ‛[E (ST t1) Int] -> E' RValue (ST s) Int’
Expected type: [E (ST t1) Int] -> E (ST s) Int
Actual type: forall v. [E (ST s) Int] -> E' v (ST s) Int
Relevant bindings include
foo :: STArray s Int Int -> ST s Int (bound at simpl017.hs:59:1)
ma :: STArray s Int Int (bound at simpl017.hs:59:5)
a :: forall v. [E (ST s) Int] -> E' v (ST s) Int
(bound at simpl017.hs:60:5)
The function ‛a’ is applied to one argument,
but its type ‛forall v. [E (ST s) Int] -> E' v (ST s) Int’ has none
In the second argument of ‛plus’, namely ‛a [one]’
In a stmt of a 'do' block: a [one] `plus` a [one]
|