From e4eceaeeb6e99ef9349fe7e99d2ab4d152f96484 Mon Sep 17 00:00:00 2001 From: David Terei Date: Tue, 3 Apr 2012 17:58:02 -0700 Subject: Fix reporting of modules safe haskell mode (#5989) --- src/Haddock/Interface/Create.hs | 3 ++- src/Haddock/Interface/LexParseRn.hs | 8 ++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/Haddock/Interface/Create.hs b/src/Haddock/Interface/Create.hs index 94575209..f68004a6 100644 --- a/src/Haddock/Interface/Create.hs +++ b/src/Haddock/Interface/Create.hs @@ -47,6 +47,7 @@ createInterface tm flags modMap instIfaceMap = do let ms = pm_mod_summary . tm_parsed_module $ tm mi = moduleInfo tm + safety = modInfoSafe mi mdl = ms_mod ms dflags = ms_hspp_opts ms instances = modInfoInstances mi @@ -69,7 +70,7 @@ createInterface tm flags modMap instIfaceMap = do | otherwise = opts0 (info, mbDoc) <- do - (i, d) <- liftErrMsg $ processModuleHeader dflags gre mayDocHeader + (i, d) <- liftErrMsg $ processModuleHeader dflags gre safety mayDocHeader return (i, addModuleWarning warnings d) let declsWithDocs = topDecls group_ diff --git a/src/Haddock/Interface/LexParseRn.hs b/src/Haddock/Interface/LexParseRn.hs index 61f5d6ac..56ed1b42 100644 --- a/src/Haddock/Interface/LexParseRn.hs +++ b/src/Haddock/Interface/LexParseRn.hs @@ -64,8 +64,9 @@ process parse dflags gre (HsDocString fs) = do Just doc -> return (Just (rename gre doc)) -processModuleHeader :: DynFlags -> GlobalRdrEnv -> Maybe LHsDocString -> ErrMsgM (HaddockModInfo Name, Maybe (Doc Name)) -processModuleHeader dflags gre mayStr = do +processModuleHeader :: DynFlags -> GlobalRdrEnv -> SafeHaskellMode -> Maybe LHsDocString + -> ErrMsgM (HaddockModInfo Name, Maybe (Doc Name)) +processModuleHeader dflags gre safety mayStr = do (hmi, doc) <- case mayStr of Nothing -> return failure @@ -79,8 +80,7 @@ processModuleHeader dflags gre mayStr = do let hmi' = hmi { hmi_description = rename gre <$> hmi_description hmi } doc' = rename gre doc return (hmi', Just doc') - let safety = Just $ showPpr $ safeHaskell dflags - return (hmi { hmi_safety = safety }, doc) + return (hmi { hmi_safety = Just $ showPpr safety }, doc) where failure = (emptyHaddockModInfo, Nothing) -- cgit v1.2.3