packages feed

ghc-exactprint-0.5.0.0: tests/examples/ghc8/T10284.hs

{-# OPTIONS_GHC -fdefer-type-errors -fno-warn-deferred-type-errors #-}

import Control.Exception

a :: Int
a = 'a'

main :: IO ()
main = do
  catch (evaluate a)
        (\e -> do let err = show (e :: TypeError)
                  putStrLn ("As expected, TypeError: " ++ err)
                  return "")
  catch (evaluate a)
        (\e -> do let err = show (e :: ErrorCall)
                  putStrLn ("Something went horribly wrong: " ++ err)
                  return "")