diff options
Diffstat (limited to 'compiler/deSugar/DsMonad.lhs')
-rw-r--r-- | compiler/deSugar/DsMonad.lhs | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/compiler/deSugar/DsMonad.lhs b/compiler/deSugar/DsMonad.lhs index e68e6db7c2..46c7bf269b 100644 --- a/compiler/deSugar/DsMonad.lhs +++ b/compiler/deSugar/DsMonad.lhs @@ -20,14 +20,14 @@ module DsMonad ( mkPrintUnqualifiedDs, newUnique, UniqSupply, newUniqueSupply, - getGhcModeDs, doptDs, woptDs, + getGhcModeDs, dsLookupGlobal, dsLookupGlobalId, dsDPHBuiltin, dsLookupTyCon, dsLookupDataCon, PArrBuiltin(..), dsLookupDPHRdrEnv, dsLookupDPHRdrEnv_maybe, dsInitPArrBuiltin, - DsMetaEnv, DsMetaVal(..), dsLookupMetaEnv, dsExtendMetaEnv, + DsMetaEnv, DsMetaVal(..), dsGetMetaEnv, dsLookupMetaEnv, dsExtendMetaEnv, -- Warnings DsWarning, warnDs, failWithDs, @@ -346,12 +346,6 @@ We can also reach out and either set/grab location information from the @SrcSpan@ being carried around. \begin{code} -doptDs :: DynFlag -> TcRnIf gbl lcl Bool -doptDs = doptM - -woptDs :: WarningFlag -> TcRnIf gbl lcl Bool -woptDs = woptM - getGhcModeDs :: DsM GhcMode getGhcModeDs = getDynFlags >>= return . ghcMode @@ -367,14 +361,16 @@ putSrcSpanDs new_loc thing_inside = updLclEnv (\ env -> env {ds_loc = new_loc}) warnDs :: SDoc -> DsM () warnDs warn = do { env <- getGblEnv ; loc <- getSrcSpanDs - ; let msg = mkWarnMsg loc (ds_unqual env) warn + ; dflags <- getDynFlags + ; let msg = mkWarnMsg dflags loc (ds_unqual env) warn ; updMutVar (ds_msgs env) (\ (w,e) -> (w `snocBag` msg, e)) } failWithDs :: SDoc -> DsM a failWithDs err = do { env <- getGblEnv ; loc <- getSrcSpanDs - ; let msg = mkErrMsg loc (ds_unqual env) err + ; dflags <- getDynFlags + ; let msg = mkErrMsg dflags loc (ds_unqual env) err ; updMutVar (ds_msgs env) (\ (w,e) -> (w, e `snocBag` msg)) ; failM } @@ -480,6 +476,9 @@ dsInitPArrBuiltin thing_inside \end{code} \begin{code} +dsGetMetaEnv :: DsM (NameEnv DsMetaVal) +dsGetMetaEnv = do { env <- getLclEnv; return (ds_meta env) } + dsLookupMetaEnv :: Name -> DsM (Maybe DsMetaVal) dsLookupMetaEnv name = do { env <- getLclEnv; return (lookupNameEnv (ds_meta env) name) } |