diff options
| author | David Terei <davidterei@gmail.com> | 2012-04-03 17:58:02 -0700 | 
|---|---|---|
| committer | David Terei <davidterei@gmail.com> | 2012-04-04 15:08:21 -0700 | 
| commit | 853397a9c62f906f5c8b4dc889c97ad2823f9c07 (patch) | |
| tree | f899cff780e1d527ea1cbc542eee20129c6b00e7 /src/Haddock/Interface | |
| parent | 0a9b99a0c916100e7087026d29253d72f1ff9057 (diff) | |
Fix reporting of modules safe haskell mode (#5989)
Diffstat (limited to 'src/Haddock/Interface')
| -rw-r--r-- | src/Haddock/Interface/Create.hs | 3 | ||||
| -rw-r--r-- | 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 5029dce8..608928b2 100644 --- a/src/Haddock/Interface/Create.hs +++ b/src/Haddock/Interface/Create.hs @@ -45,6 +45,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 @@ -68,7 +69,7 @@ createInterface tm flags modMap instIfaceMap = do          | Flag_IgnoreAllExports `elem` flags = OptIgnoreExports : opts0          | otherwise = opts0 -  (info, mbDoc) <- liftErrMsg $ lexParseRnHaddockModHeader dflags gre mayDocHeader +  (info, mbDoc) <- liftErrMsg $ lexParseRnHaddockModHeader dflags gre safety mayDocHeader    let declsWithDocs = topDecls group_        (decls, _) = unzip declsWithDocs diff --git a/src/Haddock/Interface/LexParseRn.hs b/src/Haddock/Interface/LexParseRn.hs index f70c5953..27a52ea2 100644 --- a/src/Haddock/Interface/LexParseRn.hs +++ b/src/Haddock/Interface/LexParseRn.hs @@ -67,8 +67,9 @@ lexParseRnMbHaddockComment dflags hty gre (Just d) = lexParseRnHaddockComment df  -- yes, you always get a HaddockModInfo though it might be empty -lexParseRnHaddockModHeader :: DynFlags -> GlobalRdrEnv -> GhcDocHdr -> ErrMsgM (HaddockModInfo Name, Maybe (Doc Name)) -lexParseRnHaddockModHeader dflags gre mbStr = do +lexParseRnHaddockModHeader :: DynFlags -> GlobalRdrEnv -> SafeHaskellMode -> GhcDocHdr +                           -> ErrMsgM (HaddockModInfo Name, Maybe (Doc Name)) +lexParseRnHaddockModHeader dflags gre safety mbStr = do    (hmi, docn) <-      case mbStr of        Nothing -> return failure @@ -79,9 +80,8 @@ lexParseRnHaddockModHeader dflags gre mbStr = do              tell ["haddock module header parse failed: " ++ mess]              return failure            Right (info, doc) -> return (renameHmi gre info, Just (rename gre doc)) -  return (hmi { hmi_safety = safety }, docn) +  return (hmi { hmi_safety = Just $ showPpr safety }, docn)    where -    safety  = Just $ showPpr $ safeHaskell dflags      failure = (emptyHaddockModInfo, Nothing)  | 
