X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;ds=sidebyside;f=compiler%2FdeSugar%2FDsMonad.lhs;h=11be59c54da4d5ef94cb637c1231fbfb9512e6e6;hb=c5dbdf06b92472ef64b66a01f107ba30b65c3708;hp=e275cb91e001d8e6135b9c6742a76808733d00fb;hpb=a139addf4890fc2167949680ead07ab809a9d98b;p=ghc-hetmet.git diff --git a/compiler/deSugar/DsMonad.lhs b/compiler/deSugar/DsMonad.lhs index e275cb9..11be59c 100644 --- a/compiler/deSugar/DsMonad.lhs +++ b/compiler/deSugar/DsMonad.lhs @@ -25,6 +25,8 @@ module DsMonad ( DsMetaEnv, DsMetaVal(..), dsLookupMetaEnv, dsExtendMetaEnv, + dsLoadModule, + -- Warnings DsWarning, warnDs, failWithDs, @@ -38,6 +40,7 @@ import TcRnMonad import CoreSyn import HsSyn import TcIface +import LoadIface import RdrName import HscTypes import Bag @@ -318,3 +321,14 @@ dsExtendMetaEnv :: DsMetaEnv -> DsM a -> DsM a dsExtendMetaEnv menv thing_inside = updLclEnv (\env -> env { ds_meta = ds_meta env `plusNameEnv` menv }) thing_inside \end{code} + +\begin{code} +dsLoadModule :: SDoc -> Module -> DsM () +dsLoadModule doc mod + = do { env <- getGblEnv + ; setEnvs (ds_if_env env) + (loadSysInterface doc mod) + ; return () + } +\end{code} +