From 233f4cf05e0bb50033cc11c32b9414355af8f492 Mon Sep 17 00:00:00 2001 From: Kazu Yamamoto Date: Fri, 18 Jul 2014 11:09:11 +0900 Subject: [PATCH] moving setFlags to Gap. --- Language/Haskell/GhcMod/DynFlags.hs | 5 +---- Language/Haskell/GhcMod/Gap.hs | 11 +++++++++++ Language/Haskell/GhcMod/Monad.hs | 2 +- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/Language/Haskell/GhcMod/DynFlags.hs b/Language/Haskell/GhcMod/DynFlags.hs index c5020c3..43438f6 100644 --- a/Language/Haskell/GhcMod/DynFlags.hs +++ b/Language/Haskell/GhcMod/DynFlags.hs @@ -2,7 +2,7 @@ module Language.Haskell.GhcMod.DynFlags where import Control.Applicative ((<$>)) import Control.Monad (forM, void, (>=>)) -import DynFlags (ExtensionFlag(..), xopt, GeneralFlag(..), gopt_unset) +import DynFlags (ExtensionFlag(..), xopt) import GHC (DynFlags(..), GhcMode(..), GhcLink(..), HscTarget(..), LoadHowMuch(..)) import qualified GHC as G import GHC.Paths (libdir) @@ -40,9 +40,6 @@ setModeIntelligent df = df { , optLevel = 0 } -setFlags :: DynFlags -> DynFlags -setFlags df = df `gopt_unset` Opt_SpecConstr -- consume memory if -O2 - setIncludeDirs :: [IncludeDir] -> DynFlags -> DynFlags setIncludeDirs idirs df = df { importPaths = idirs } diff --git a/Language/Haskell/GhcMod/Gap.hs b/Language/Haskell/GhcMod/Gap.hs index 7bc9181..2db9972 100644 --- a/Language/Haskell/GhcMod/Gap.hs +++ b/Language/Haskell/GhcMod/Gap.hs @@ -39,6 +39,7 @@ module Language.Haskell.GhcMod.Gap ( , GLMatch , getClass , occName + , setFlags ) where import Control.Applicative hiding (empty) @@ -459,3 +460,13 @@ getClass _ = Nothing occName :: RdrName -> OccName occName = rdrNameOcc #endif + +---------------------------------------------------------------- +---------------------------------------------------------------- + +setFlags :: DynFlags -> DynFlags +#if __GLASGOW_HASKELL__ >= 708 +setFlags df = df `gopt_unset` Opt_SpecConstr -- consume memory if -O2 +#else +setFlags = id +#endif diff --git a/Language/Haskell/GhcMod/Monad.hs b/Language/Haskell/GhcMod/Monad.hs index 91ec2b8..a63b4e8 100644 --- a/Language/Haskell/GhcMod/Monad.hs +++ b/Language/Haskell/GhcMod/Monad.hs @@ -190,7 +190,7 @@ initSession build Options {..} CompilerOptions {..} = do df <- G.getSessionDynFlags void $ G.setSessionDynFlags =<< addCmdOpts ghcOptions ( setModeSimple - $ setFlags + $ Gap.setFlags $ setIncludeDirs includeDirs $ setBuildEnv build $ setEmptyLogger