-- should fail: f = (++) :: a -> a -> a