diff options
Diffstat (limited to 'haddock-api/src/Haddock/GhcUtils.hs')
| -rw-r--r-- | haddock-api/src/Haddock/GhcUtils.hs | 13 | 
1 files changed, 7 insertions, 6 deletions
| diff --git a/haddock-api/src/Haddock/GhcUtils.hs b/haddock-api/src/Haddock/GhcUtils.hs index 599404a0..7c1dc73b 100644 --- a/haddock-api/src/Haddock/GhcUtils.hs +++ b/haddock-api/src/Haddock/GhcUtils.hs @@ -1,5 +1,6 @@  {-# LANGUAGE BangPatterns, StandaloneDeriving, FlexibleInstances, ViewPatterns #-}  {-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-}  {-# LANGUAGE RankNTypes #-}  {-# LANGUAGE TypeApplications #-}  {-# LANGUAGE ScopedTypeVariables #-} @@ -95,7 +96,7 @@ ifTrueJust True  = Just  ifTrueJust False = const Nothing  sigName :: LSig GhcRn -> [IdP GhcRn] -sigName (L _ sig) = sigNameNoLoc sig +sigName (L _ sig) = sigNameNoLoc emptyOccEnv sig  -- | Was this signature given by the user?  isUserLSig :: forall p. UnXRec p => LSig p -> Bool @@ -114,7 +115,7 @@ pretty = showPpr  -- instantiated at DocNameI instead of (GhcPass _).  -- | Like 'hsTyVarName' from GHC API, but not instantiated at (GhcPass _) -hsTyVarBndrName :: forall flag n. (XXTyVarBndr n ~ NoExtCon, UnXRec n) +hsTyVarBndrName :: forall flag n. (XXTyVarBndr n ~ DataConCantHappen, UnXRec n)                  => HsTyVarBndr flag n -> IdP n  hsTyVarBndrName (UserTyVar _ _ name) = unXRec @n name  hsTyVarBndrName (KindedTyVar _ _ name _) = unXRec @n name @@ -192,7 +193,7 @@ getMainDeclBinderI (ValD _ d) =    case collectHsBindBinders CollNoDictBinders d of      []       -> []      (name:_) -> [name] -getMainDeclBinderI (SigD _ d) = sigNameNoLoc d +getMainDeclBinderI (SigD _ d) = sigNameNoLoc emptyOccEnv d  getMainDeclBinderI (ForD _ (ForeignImport _ name _ _)) = [unLoc name]  getMainDeclBinderI (ForD _ (ForeignExport _ _ _ _)) = []  getMainDeclBinderI _ = [] @@ -228,7 +229,7 @@ addClassContext cls tvs0 (L pos (ClassOpSig _ _ lname ltype))         = L loc (HsQualTy { hst_xqual = noExtField                           , hst_ctxt = add_ctxt (noLocA []), hst_body = L loc ty }) -    extra_pred = nlHsTyConApp Prefix cls (lHsQTyVarsToTypes tvs0) +    extra_pred = nlHsTyConApp NotPromoted Prefix cls (lHsQTyVarsToTypes tvs0)      add_ctxt (L loc preds) = L loc (extra_pred : preds) @@ -364,8 +365,8 @@ reparenTypePrec = go      = paren p PREC_CON $ HsAppTy x (goL PREC_FUN fun_ty) (goL PREC_CON arg_ty)    go p (HsAppKindTy x fun_ty arg_ki)      = paren p PREC_CON $ HsAppKindTy x (goL PREC_FUN fun_ty) (goL PREC_CON arg_ki) -  go p (HsOpTy x ty1 op ty2) -    = paren p PREC_FUN $ HsOpTy x (goL PREC_OP ty1) op (goL PREC_OP ty2) +  go p (HsOpTy x prom ty1 op ty2) +    = paren p PREC_FUN $ HsOpTy x prom (goL PREC_OP ty1) op (goL PREC_OP ty2)    go p (HsParTy _ t) = unXRec @a $ goL p t -- pretend the paren doesn't exist - it will be added back if needed    go _ t@HsTyVar{} = t    go _ t@HsStarTy{} = t | 
