diff options
Diffstat (limited to 'libraries/base/GHC/Exception.hs-boot')
-rw-r--r-- | libraries/base/GHC/Exception.hs-boot | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/libraries/base/GHC/Exception.hs-boot b/libraries/base/GHC/Exception.hs-boot new file mode 100644 index 0000000000..aa19897363 --- /dev/null +++ b/libraries/base/GHC/Exception.hs-boot @@ -0,0 +1,34 @@ +{-# LANGUAGE Trustworthy #-} +{-# LANGUAGE NoImplicitPrelude #-} + +{- +This SOURCE-imported hs-boot module cuts a big dependency loop: + + GHC.Exception +imports Data.Maybe +imports GHC.Base +imports GHC.Err +imports {-# SOURCE #-} GHC.Exception + +More dramatically + + GHC.Exception +imports Data.Typeable +imports Data.Typeable.Internals +imports GHC.Arr (fingerprint representation etc) +imports GHC.Real +imports {-# SOURCE #-} GHC.Exception + +However, GHC.Exceptions loop-breaking exports are all nice, +well-behaved, non-bottom values. The clients use 'raise#' +to get a visibly-bottom value. +-} + +module GHC.Exception ( SomeException, errorCallException, + divZeroException, overflowException, ratioZeroDenomException + ) where +import GHC.Types( Char ) + +data SomeException +divZeroException, overflowException, ratioZeroDenomException :: SomeException +errorCallException :: [Char] -> SomeException |