diff --git a/postlude.cabal b/postlude.cabal index c78cf54..4b5405d 100644 --- a/postlude.cabal +++ b/postlude.cabal @@ -21,6 +21,7 @@ library bytestring == 0.10.8.1, exceptions == 0.8.3, free == 4.12.4, + ghc-prim == 0.5.0.0, mtl == 2.2.1, text == 1.2.2.2, transformers == 0.5.5.0 diff --git a/src/Postlude.hs b/src/Postlude.hs index cd2c376..fa69e93 100644 --- a/src/Postlude.hs +++ b/src/Postlude.hs @@ -1,4 +1,6 @@ {-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE RankNTypes #-} +{-# LANGUAGE TypeInType #-} -- The following maps all imports into a single module alias for easy exporting. -- In all cases, we choose to explicitly list all exports (and avoid the use of @@ -304,3 +306,11 @@ import System.IO as X import Text.Read as X ( read ) + +import qualified GHC.Err as Err +import qualified GHC.Stack.Types as Stack.Types +import qualified GHC.Types as GHC.Types + +undefined :: forall (r :: GHC.Types.RuntimeRep). forall (a :: GHC.Types.TYPE r). + Stack.Types.HasCallStack => a +undefined = Err.error "Postlude.undefined"