From bf9da9cddc3d6161367bdc8710afc4fe08c3bdfd Mon Sep 17 00:00:00 2001 From: Alec Theriault Date: Tue, 21 Aug 2018 11:24:56 -0700 Subject: Handle promoted tuples in 'synifyType' When we have a fully applied promoted tuple, we can expand it out properly. --- haddock-api/src/Haddock/Convert.hs | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'haddock-api/src/Haddock') diff --git a/haddock-api/src/Haddock/Convert.hs b/haddock-api/src/Haddock/Convert.hs index 71482f22..622837fa 100644 --- a/haddock-api/src/Haddock/Convert.hs +++ b/haddock-api/src/Haddock/Convert.hs @@ -458,6 +458,10 @@ synifyType _ (TyConApp tc tys) UnboxedTuple -> HsUnboxedTuple) (map (synifyType WithinType) vis_tys) | isUnboxedSumTyCon tc = noLoc $ HsSumTy noExt (map (synifyType WithinType) vis_tys) + | Just dc <- isPromotedDataCon_maybe tc + , isTupleDataCon dc + , dataConSourceArity dc == length vis_tys + = noLoc $ HsExplicitTupleTy noExt (map (synifyType WithinType) vis_tys) -- ditto for lists | getName tc == listTyConName, [ty] <- tys = noLoc $ HsListTy noExt (synifyType WithinType ty) -- cgit v1.2.3