1 2 3 4 5 6 7 8
{-# LANGUAGE ApplicativeDo #-} module ShouldFail where g :: IO () g = do x <- getChar 'a' <- return (3::Int) -- type error return ()