Commit 52c36250 authored by Simon Peyton Jones's avatar Simon Peyton Jones
Browse files

Accept typechecker output

parent 31ffbaf3
tcfail010.hs:3:15:
No instance for (Num [t])
arising from use of `+' at tcfail010.hs:3:15-17
Possible fix: add an instance declaration for (Num [t])
In the expression: z + 2
In a lambda abstraction: \ (y : z) -> z + 2
In the expression: \ (y : z) -> z + 2
tcfail010.hs:3:17:
No instance for (Num [t])
arising from the literal `2' at tcfail010.hs:3:17
Possible fix: add an instance declaration for (Num [t])
In the second argument of `(+)', namely `2'
In the expression: z + 2
In a lambda abstraction: \ (y : z) -> z + 2
tcfail065.hs:29:19:
Couldn't match expected type `x' (a rigid variable)
against inferred type `x1' (a rigid variable)
`x' is bound by the instance declaration at tcfail065.hs:28:0
`x1' is bound by the type signature for `setX'
at tcfail065.hs:25:10
Expected type: x
Inferred type: x1
In the first argument of `X', namely `x'
In the expression: X x
tcfail065.hs:29:19:
Couldn't match expected type `x' (a rigid variable)
against inferred type `x1' (a rigid variable)
`x' is bound by the instance declaration at tcfail065.hs:28:0
`x1' is bound by the type signature for `setX'
at tcfail065.hs:25:10
In the first argument of `X', namely `x'
In the expression: X x
In the definition of `setX': setX x (X _) = X x
tcfail090.hs:8:8:
Couldn't match kind `*' against `!'
When matching the kinds of `a :: *' and `ByteArray# :: !'
Expected type: ByteArray#
Inferred type: a
In the expression: undefined
tcfail090.hs:8:8:
Couldn't match kind `*' against `#'
When matching the kinds of `a :: *' and `ByteArray# :: #'
Expected type: ByteArray#
Inferred type: a
In the expression: undefined
tcfail122.hs:8:1:
Couldn't match kind `(* -> *) -> *' against `* -> *'
When matching the kinds of `c :: (* -> *) -> *' and `a :: * -> *'
Expected type: a b
Inferred type: forall (c1 :: (* -> *) -> *) (d :: * -> *). c1 d
In the expression:
undefined :: forall c :: ((* -> *) -> *) d :: (* -> *). c d
tcfail122.hs:8:1:
Couldn't match kind `(* -> *) -> *' against `* -> *'
When matching the kinds of `c :: (* -> *) -> *' and `a :: * -> *'
Expected type: a b
Inferred type: c d
In the expression:
undefined :: forall c :: ((* -> *) -> *) d :: (* -> *). c d
tcfail153.hs:6:8:
Couldn't match expected type `Bool'
against inferred type `a' (a rigid variable)
`a' is bound by the type signature for `f' at tcfail153.hs:5:5
Expected type: Bool
Inferred type: a
In the first argument of `g', namely `x'
In the expression: g x
tcfail153.hs:6:8:
Couldn't match expected type `Bool'
against inferred type `a' (a rigid variable)
`a' is bound by the type signature for `f' at tcfail153.hs:5:5
In the first argument of `g', namely `x'
In the expression: g x
In the definition of `f':
f x = g x
where
g y = if y then [] else [y]
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment