[project @ 2004-02-20 17:46:38 by panne]
[ghc-base.git] / GHC / Err.lhs
index e7abb0c..a44e1a5 100644 (file)
@@ -29,8 +29,8 @@ module GHC.Err
        , recConError
        , runtimeError              -- :: Addr#  -> a   -- Addr# points to UTF8 encoded C string
 
-       , absentErr, parError       -- :: a
-       , seqError                  -- :: a
+       , absentErr                -- :: a
+       , divZeroError             -- :: a
 
        , error                    -- :: String -> a
        , assertError              -- :: String -> Bool -> a -> a
@@ -38,9 +38,11 @@ module GHC.Err
        , undefined                -- :: a
        ) where
 
+#ifndef __HADDOCK__
 import GHC.Base
 import GHC.List     ( span )
 import GHC.Exception
+#endif
 \end{code}
 
 %*********************************************************
@@ -72,11 +74,9 @@ Used for compiler-generated error message;
 encoding saves bytes of string junk.
 
 \begin{code}
-absentErr, parError, seqError :: a
+absentErr :: a
 
 absentErr = error "Oops! The program has entered an `absent' argument!\n"
-parError  = error "Oops! Entered GHCerr.parError (a GHC bug -- please report it!)\n"
-seqError  = error "Oops! Entered seqError (a GHC bug -- please report it!)\n"
 \end{code}
 
 \begin{code}
@@ -127,3 +127,13 @@ untangle coded message
        }
     not_bar c = c /= '|'
 \end{code}
+
+Divide by zero.  We put it here because it is needed relatively early
+in the libraries before the Exception type has been defined yet.
+
+\begin{code}
+{-# NOINLINE divZeroError #-}
+divZeroError :: a
+divZeroError = throw (ArithException DivideByZero)
+\end{code}
+