3 Inferred type is less polymorphic than expected
4 Quantified type variable `$a' escapes; i.e. unifies with something more global
5 When checking the type signature for an expression
7 Inferred: ST $a (c, IndTree $a b)
8 In the first argument of `runST', namely `(itrapstate' i k s)'
9 In the right-hand side of an equation for `itrapstate':
10 runST (itrapstate' i k s)
13 Inferred type is less polymorphic than expected
14 Quantified type variable `$a' escapes; i.e. unifies with something more global
15 When checking the type signature for an expression
17 Inferred: ST $a (IndTree $a a)
18 In the first argument of `runST', namely `(itrap' i k)'
19 In the right-hand side of an equation for `itrap':
23 Inferred type is less polymorphic than expected
24 Quantified type variable `$a' escapes; i.e. unifies with something more global
25 When checking the type signature for an expression
27 Inferred: ST $a (IndTree $a a)
28 In the first argument of `runST', namely
30 >>= (\ val -> (writeArray arr i (f val)) >> (return arr)))'
31 In the right-hand side of an equation for `itiap':
32 runST ((readArray arr i)
33 >>= (\ val -> (writeArray arr i (f val)) >> (return arr)))
36 Inferred type is less polymorphic than expected
37 Quantified type variable `$c' escapes; i.e. unifies with something more global
38 When checking the type signature for an expression
40 Inferred: ST $c (IndTree $c $b1)
41 In the first argument of `runST', namely `(newArray ((1, 1), n) x)'
42 In the right-hand side of an equation for `itgen':
43 runST (newArray ((1, 1), n) x)
46 Compilation had errors