X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Fghci%2FGhciTags.hs;h=a974c01ed384575c5bdd5b72bb9c494e3702a23d;hp=1c5295a672b89b7d67904664d87d3276f5e08679;hb=421819753b3eb4940a26e578ef0e4c5cd31761fa;hpb=c02da7d1176d2165e7f9ec6f42752d456dd9fee2 diff --git a/compiler/ghci/GhciTags.hs b/compiler/ghci/GhciTags.hs index 1c5295a..a974c01 100644 --- a/compiler/ghci/GhciTags.hs +++ b/compiler/ghci/GhciTags.hs @@ -25,6 +25,7 @@ import Util import Name (nameOccName) import OccName (pprOccName) +import Data.Maybe import Control.Exception import Data.List import Control.Monad @@ -69,11 +70,13 @@ createTagsFile session tagskind tagFile = do ++ GHC.moduleNameString (GHC.moduleName m) ++ "' is not interpreted")) mbModInfo <- GHC.getModuleInfo session m - let unqual - | Just modinfo <- mbModInfo, - Just unqual <- GHC.modInfoPrintUnqualified modinfo = unqual - | otherwise = GHC.alwaysQualify - + unqual <- + case mbModInfo of + Just minf -> do + mb_print_unqual <- GHC.mkPrintUnqualifiedForModule session minf + return (fromMaybe GHC.alwaysQualify mb_print_unqual) + Nothing -> + return GHC.alwaysQualify case mbModInfo of Just modInfo -> return $! listTags unqual modInfo _ -> return []