diff options
author | Ben Gamari <ben@smart-cactus.org> | 2015-12-16 06:05:25 -0500 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2015-12-16 17:54:55 +0100 |
commit | 3de72a80fff18aa71873ace86d1aeb5171b09b41 (patch) | |
tree | fd3e08aa0faf63bd46ed130240c6fa65e65c8c20 /haddock-api/src/Haddock/Interface/Rename.hs | |
parent | a45a133af1f25ce60a8d1b0750c8f3ce452129d6 (diff) |
Fix fallout from wildcards refactoring
The wildcard refactoring was introduced a new type of signature,
`ClassOpSig`, which is carried by typeclasses. The original patch
adapting Haddock for this change missed a few places where this
constructor needed to be handled, resulting in no class methods
in documentation produced by Haddock.
Additionally, this moves and renames the `isVanillaLSig` helper from
GHC's HsBinds module into GhcUtils, since it is only used by Haddock.
Diffstat (limited to 'haddock-api/src/Haddock/Interface/Rename.hs')
-rw-r--r-- | haddock-api/src/Haddock/Interface/Rename.hs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/haddock-api/src/Haddock/Interface/Rename.hs b/haddock-api/src/Haddock/Interface/Rename.hs index 859afe6e..2478ce23 100644 --- a/haddock-api/src/Haddock/Interface/Rename.hs +++ b/haddock-api/src/Haddock/Interface/Rename.hs @@ -459,6 +459,10 @@ renameSig sig = case sig of lnames' <- mapM renameL lnames ltype' <- renameLSigWcType ltype return (TypeSig lnames' ltype') + ClassOpSig is_default lnames sig_ty -> do + lnames' <- mapM renameL lnames + ltype' <- renameLSigType sig_ty + return (ClassOpSig is_default lnames' ltype') PatSynSig lname sig_ty -> do lname' <- renameL lname sig_ty' <- renameLSigType sig_ty |