X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fcompiler%2Futils%2FPanic.lhs;h=2a5d3a417482f6b5aff0cadafc263ba0c4fd9ea2;hb=423d477bfecd490de1449c59325c8776f91d7aac;hp=b47ff7fe9e62d5360735a70ac5d93a880b1c80a2;hpb=e434189798bb3ca2125ac8978b4177511030582b;p=ghc-hetmet.git diff --git a/ghc/compiler/utils/Panic.lhs b/ghc/compiler/utils/Panic.lhs index b47ff7f..2a5d3a4 100644 --- a/ghc/compiler/utils/Panic.lhs +++ b/ghc/compiler/utils/Panic.lhs @@ -16,13 +16,11 @@ module Panic showException, showGhcException, tryMost, installSignalHandlers, -#if __GLASGOW_HASKELL__ <= 408 - catchJust, ioErrors, throwTo, -#endif + catchJust, tryJust, ioErrors, throwTo, ) where #include "HsVersions.h" -#include "config.h" +#include "../includes/ghcconfig.h" import Config import FastTypes @@ -32,15 +30,19 @@ import FastTypes import System.Posix.Signals # else import Posix ( Handler(Catch), installHandler, sigINT, sigQUIT ) -# endif +# endif /* GHC > 504 */ import CONCURRENT ( myThreadId ) +#endif /* mingw32_HOST_OS */ # if __GLASGOW_HASKELL__ < 500 import EXCEPTION ( raiseInThread ) # else import EXCEPTION ( throwTo ) -# endif +# endif /* GHC < 500 */ + +#if __GLASGOW_HASKELL__ > 408 +import EXCEPTION ( catchJust, tryJust, ioErrors ) #endif import DYNAMIC @@ -119,10 +121,16 @@ showGhcException (Panic s) ++ "to glasgow-haskell-bugs@haskell.org,\n" ++ "or http://sourceforge.net/projects/ghc/.\n\n") +#if __GLASGOW_HASKELL__ < 603 +myMkTyConApp = mkAppTy +#else +myMkTyConApp = mkTyConApp +#endif + ghcExceptionTc = mkTyCon "GhcException" {-# NOINLINE ghcExceptionTc #-} instance Typeable GhcException where - typeOf _ = mkAppTy ghcExceptionTc [] + typeOf _ = myMkTyConApp ghcExceptionTc [] \end{code} Panics and asserts. @@ -173,6 +181,7 @@ Compatibility stuff: \begin{code} #if __GLASGOW_HASKELL__ <= 408 catchJust = Exception.catchIO +tryJust = Exception.tryIO ioErrors = Exception.justIoErrors throwTo = Exception.raiseInThread #endif