diff options
author | David Waern <david.waern@gmail.com> | 2008-08-03 17:47:26 +0000 |
---|---|---|
committer | David Waern <david.waern@gmail.com> | 2008-08-03 17:47:26 +0000 |
commit | 9b3fa59c6a9d678408e594435fe8f44e4587c2f4 (patch) | |
tree | 47d2aecf99d5fe782ea6cacdd3086cc690232e1b /src/Haddock | |
parent | ca4f3779257dcfe2005cc980035c1c664389a8d1 (diff) |
Filter out separately exported ATs (take two)
Diffstat (limited to 'src/Haddock')
-rw-r--r-- | src/Haddock/GHC/Utils.hs | 4 | ||||
-rw-r--r-- | src/Haddock/Interface/Create.hs | 7 |
2 files changed, 9 insertions, 2 deletions
diff --git a/src/Haddock/GHC/Utils.hs b/src/Haddock/GHC/Utils.hs index 9aa89a88..6de56f88 100644 --- a/src/Haddock/GHC/Utils.hs +++ b/src/Haddock/GHC/Utils.hs @@ -92,6 +92,10 @@ isInstD (TyClD d) = isFamInstDecl d isInstD _ = False +declATs (TyClD d) | isClassDecl d = map (tcdName . unL) $ tcdATs d +declATs _ = [] + + pretty :: Outputable a => a -> String pretty x = showSDoc (ppr x) diff --git a/src/Haddock/Interface/Create.hs b/src/Haddock/Interface/Create.hs index 4380c0ee..1d41216e 100644 --- a/src/Haddock/Interface/Create.hs +++ b/src/Haddock/Interface/Create.hs @@ -408,8 +408,11 @@ mkExportItems modMap this_mod exported_names decls declMap famMap sub_map declWith :: Name -> ErrMsgM [ ExportItem Name ] declWith t - | Just (decl, maybeDoc) <- findDecl t - = return [ ExportDecl (restrictTo subs (extractDecl t mdl decl)) maybeDoc [] ] + -- temp hack: we filter out separately declared ATs, since we haven't decided how + -- to handle them yet. We should really give an warning message also, and filter the + -- name out in mkVisibleNames... + | Just (decl, maybeDoc) <- findDecl t, t `notElem` declATs (unL decl) = + return [ ExportDecl (restrictTo subs (extractDecl t mdl decl)) maybeDoc [] ] | otherwise = return [] where mdl = nameModule t |