CPP around optparse-applicative and hse conflicts

This commit is contained in:
Daniel Gröber
2017-01-16 20:56:57 +01:00
parent 5df1480309
commit cb9ddf86e3
4 changed files with 30 additions and 7 deletions

View File

@@ -27,7 +27,11 @@ import qualified HsBinds as Ty
import qualified Class as Ty
import qualified Var as Ty
import qualified HsPat as Ty
#if MIN_VERSION_haskell_src_exts(1,18,0)
import qualified Language.Haskell.Exts as HE
#else
import qualified Language.Haskell.Exts.Annotated as HE
#endif
import Djinn.GHC
import qualified Language.Haskell.GhcMod.Gap as Gap
@@ -191,7 +195,11 @@ getSignatureFromHE file lineNo colNo = do
HE.TypeSig (HE.SrcSpanInfo s _) names ty ->
return $ HESignature s names ty
#if MIN_VERSION_haskell_src_exts(1,18,0)
HE.TypeFamDecl (HE.SrcSpanInfo s _) declHead _ _ ->
#else
HE.TypeFamDecl (HE.SrcSpanInfo s _) declHead _ ->
#endif
let (name, tys) = dHeadTyVars declHead in
return $ HEFamSignature s Open name (map cleanTyVarBind tys)

View File

@@ -16,7 +16,11 @@ import qualified Var as G
import qualified Type as G
import GHC.SYB.Utils
import GhcMonad
#if MIN_VERSION_haskell_src_exts(1,18,0)
import qualified Language.Haskell.Exts as HE
#else
import qualified Language.Haskell.Exts.Annotated as HE
#endif
import Language.Haskell.GhcMod.Doc
import Language.Haskell.GhcMod.Gap
import qualified Language.Haskell.GhcMod.Gap as Gap
@@ -175,7 +179,11 @@ fourIntsHE loc = ( HE.srcSpanStartLine loc, HE.srcSpanStartColumn loc
typeSigInRangeHE :: Int -> Int -> HE.Decl HE.SrcSpanInfo -> Bool
typeSigInRangeHE lineNo colNo (HE.TypeSig (HE.SrcSpanInfo s _) _ _) =
HE.srcSpanStart s <= (lineNo, colNo) && HE.srcSpanEnd s >= (lineNo, colNo)
#if MIN_VERSION_haskell_src_exts(1,18,0)
typeSigInRangeHE lineNo colNo (HE.TypeFamDecl (HE.SrcSpanInfo s _) _ _ _) =
#else
typeSigInRangeHE lineNo colNo (HE.TypeFamDecl (HE.SrcSpanInfo s _) _ _) =
#endif
HE.srcSpanStart s <= (lineNo, colNo) && HE.srcSpanEnd s >= (lineNo, colNo)
typeSigInRangeHE lineNo colNo (HE.DataFamDecl (HE.SrcSpanInfo s _) _ _ _) =
HE.srcSpanStart s <= (lineNo, colNo) && HE.srcSpanEnd s >= (lineNo, colNo)