tcfail218.hs:16:5: Overlapping instances for C [a] Bool arising from a use of ‘foo’ Matching instances: instance C [a] b -- Defined at tcfail218.hs:8:29 instance C [Int] Bool -- Defined at tcfail218.hs:7:29 (The choice depends on the instantiation of ‘a’ To pick the first instance above, use IncoherentInstances when compiling the other instance declarations) In the expression: foo In an equation for ‘x’: x = foo