9bef80d9257f7e802f3499907af6280f73cac1e1
[packages/base.git] / GHC / Err.lhs-boot
1 \begin{code}
2 {-# OPTIONS_GHC -XNoImplicitPrelude #-}
3 ---------------------------------------------------------------------------
4 --                  Ghc.Err.hs-boot
5 ---------------------------------------------------------------------------
6
7 module GHC.Err( error ) where
8
9 -- The type signature for 'error' is a gross hack.
10 -- First, we can't give an accurate type for error, because it mentions 
11 -- an open type variable.
12 -- Second, we can't even say error :: [Char] -> a, because Char is defined
13 -- in GHC.Base, and that would make Err.lhs-boot mutually recursive 
14 -- with GHC.Base.
15 -- Fortunately it doesn't matter what type we give here because the 
16 -- compiler will use its wired-in version.  But we have
17 -- to mention 'error' so that it gets exported from this .hi-boot
18 -- file.
19 error    :: a
20 \end{code}