Flattener preserves synonyms, rewriteEvidence can drop buggy "optimisation"
[ghc.git] / testsuite / tests / simplCore / should_compile / simpl017.stderr
1
2 simpl017.hs:44:12:
3     Couldn't match expected type ‘forall v. [E m i] -> E' v m a’
4                 with actual type ‘[E m i] -> E' v0 m a’
5     Relevant bindings include
6       f :: [E m i] -> E' v0 m a (bound at simpl017.hs:43:9)
7       ix :: [E m i] -> m i (bound at simpl017.hs:41:9)
8       a :: arr i a (bound at simpl017.hs:39:11)
9       liftArray :: arr i a -> E m (forall v. [E m i] -> E' v m a)
10         (bound at simpl017.hs:39:1)
11     In the first argument of ‘return’, namely ‘f’
12     In a stmt of a 'do' block: return f
13
14 simpl017.hs:63:5:
15     Couldn't match expected type ‘[E (ST t0) Int] -> E (ST s) Int’
16                 with actual type ‘forall v. [E (ST s) Int] -> E' v (ST s) Int’
17     Relevant bindings include
18       a :: forall v. [E (ST s) Int] -> E' v (ST s) Int
19         (bound at simpl017.hs:60:5)
20       ma :: STArray s Int Int (bound at simpl017.hs:59:5)
21       foo :: STArray s Int Int -> ST s Int (bound at simpl017.hs:59:1)
22     The function ‘a’ is applied to one argument,
23     but its type ‘forall v. [E (ST s) Int] -> E' v (ST s) Int’ has none
24     In the first argument of ‘plus’, namely ‘a [one]’
25     In a stmt of a 'do' block: a [one] `plus` a [one]
26
27 simpl017.hs:63:19:
28     Couldn't match expected type ‘[E (ST t1) Int] -> E (ST s) Int’
29                 with actual type ‘forall v. [E (ST s) Int] -> E' v (ST s) Int’
30     Relevant bindings include
31       a :: forall v. [E (ST s) Int] -> E' v (ST s) Int
32         (bound at simpl017.hs:60:5)
33       ma :: STArray s Int Int (bound at simpl017.hs:59:5)
34       foo :: STArray s Int Int -> ST s Int (bound at simpl017.hs:59:1)
35     The function ‘a’ is applied to one argument,
36     but its type ‘forall v. [E (ST s) Int] -> E' v (ST s) Int’ has none
37     In the second argument of ‘plus’, namely ‘a [one]’
38     In a stmt of a 'do' block: a [one] `plus` a [one]