tcfail153.hs:6:7:
Couldn't match type ‘a’ with ‘Bool’
‘a’ is a rigid type variable bound by
the type signature for: f :: a -> [a] at tcfail153.hs:5:6
Expected type: [a]
Actual type: [Bool]
Relevant bindings include
x :: a (bound at tcfail153.hs:6:3)
f :: a -> [a] (bound at tcfail153.hs:6:1)
In the expression: g x
In an equation for ‘f’:
f x
= g x
where
g y = if y then [] else [...]