summaryrefslogtreecommitdiff
path: root/testsuite/tests/simplCore/should_compile/simpl017.stderr
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]