From 82777ce96e1ddad02033adc2f0c0c6f548e850ac Mon Sep 17 00:00:00 2001 From: Daniel Gröber Date: Wed, 31 Jul 2019 14:15:03 +0200 Subject: Fix some warnings I'm turning off -Wunused-imports in the modules that have to deal with ancient Cabal versions because maintaining warning cleanlyness really is quite pointless when you have to deal with all sorts of deprecations and stuff moving around. I don't think having too many imports will ever break anything there unless the modules really get deprecated and removed, but we'll notice that ;) --- src/CabalHelper/Compiletime/Program/Stack.hs | 10 ++++------ src/CabalHelper/Compiletime/Types.hs | 1 - src/CabalHelper/Runtime/Compat.hs | 1 + src/CabalHelper/Runtime/HelperMain.hs | 4 +++- 4 files changed, 8 insertions(+), 8 deletions(-) (limited to 'src') diff --git a/src/CabalHelper/Compiletime/Program/Stack.hs b/src/CabalHelper/Compiletime/Program/Stack.hs index f0dd766..353e8f1 100644 --- a/src/CabalHelper/Compiletime/Program/Stack.hs +++ b/src/CabalHelper/Compiletime/Program/Stack.hs @@ -46,11 +46,7 @@ import CabalHelper.Compiletime.Types.RelativePath import CabalHelper.Shared.Common getUnit :: QueryEnvI c 'Stack -> CabalFile -> IO (Unit 'Stack) -getUnit - qe@QueryEnv{qeProjLoc=ProjLocStackYaml stack_yaml} - cabal_file@(CabalFile cabal_file_path) - = do - let projdir = takeDirectory stack_yaml +getUnit qe cabal_file@(CabalFile cabal_file_path) = do let pkgdir = takeDirectory cabal_file_path let pkg_name = dropExtension $ takeFileName cabal_file_path look <- paths qe pkgdir @@ -91,7 +87,7 @@ listPackageCabalFiles qe@QueryEnv{qeProjLoc=ProjLocStackYaml stack_yaml} return $ map CabalFile $ lines out where ioerror :: IOError -> IO a - ioerror ioe = (=<<) (fromMaybe (throwIO ioe)) $ runMaybeT $ do + ioerror ioe = (fromMaybe (throwIO ioe) =<<) $ runMaybeT $ do stack_exe <- MaybeT $ findExecutable $ stackProgram $ qePrograms qe stack_ver_str <- liftIO $ trim <$> readStackCmd qe Nothing ["--numeric-version"] @@ -116,6 +112,8 @@ listPackageCabalFiles qe@QueryEnv{qeProjLoc=ProjLocStackYaml stack_yaml} workdirArg :: QueryEnvI c 'Stack -> [String] workdirArg QueryEnv{qeDistDir=DistDirStack mworkdir} = maybeToList $ ("--work-dir="++) . unRelativePath <$> mworkdir +workdirArg QueryEnv{qeDistDir=DistDirCabal{}} = + error "workdirArg: TODO: this case is impossible and should not produce an exhaustiveness warning anymore starting with GHC 8.8" doStackCmd :: (QueryEnvI c 'Stack -> CallProcessWithCwd a) -> QueryEnvI c 'Stack -> Maybe FilePath -> [String] -> IO a diff --git a/src/CabalHelper/Compiletime/Types.hs b/src/CabalHelper/Compiletime/Types.hs index cded136..e79c812 100644 --- a/src/CabalHelper/Compiletime/Types.hs +++ b/src/CabalHelper/Compiletime/Types.hs @@ -32,7 +32,6 @@ import Data.IORef import Data.Version import Data.Typeable import GHC.Generics -import System.FilePath import System.Posix.Types import CabalHelper.Compiletime.Types.RelativePath import CabalHelper.Shared.InterfaceTypes diff --git a/src/CabalHelper/Runtime/Compat.hs b/src/CabalHelper/Runtime/Compat.hs index 0c5a895..1673b7a 100644 --- a/src/CabalHelper/Runtime/Compat.hs +++ b/src/CabalHelper/Runtime/Compat.hs @@ -16,6 +16,7 @@ {-# LANGUAGE CPP, BangPatterns, RecordWildCards, RankNTypes, ViewPatterns, TupleSections #-} +{-# OPTIONS_GHC -fno-warn-unused-imports #-} #ifdef MIN_VERSION_Cabal #undef CH_MIN_VERSION_Cabal diff --git a/src/CabalHelper/Runtime/HelperMain.hs b/src/CabalHelper/Runtime/HelperMain.hs index b4ba6cc..a3119e5 100644 --- a/src/CabalHelper/Runtime/HelperMain.hs +++ b/src/CabalHelper/Runtime/HelperMain.hs @@ -16,7 +16,7 @@ {-# LANGUAGE CPP, BangPatterns, RecordWildCards, RankNTypes, ViewPatterns, TupleSections #-} - +{-# OPTIONS_GHC -fno-warn-unused-imports #-} {- # OPTIONS_GHC -Wno-missing-signatures #-} {- # OPTIONS_GHC -fno-warn-incomplete-patterns #-} @@ -512,6 +512,7 @@ componentOptions' (lbi, v, distdir) inplaceFlag flags rf f = do #else [] -> removeInplaceDeps v lbi pd clbi #endif + _ -> error $ "invalid flags: " ++ show flags opts = componentGhcOptions normal lbi bi clbi' outdir opts' = f opts @@ -686,6 +687,7 @@ combineEp (Just ChSetupEntrypoint) e = e combineEp (Just (ChLibEntrypoint es1 os1 ss1)) (ChLibEntrypoint es2 os2 ss2) = (ChLibEntrypoint (nub $ es2++es1) (nub $ os2++os1) (nub $ ss2++ss1)) combineEp _ e@(ChExeEntrypoint _mi _os2) = error $ "combineEP: cannot have a sub exe:" ++ show e combineEp (Just (ChExeEntrypoint mi os1)) (ChLibEntrypoint es2 os2 ss2) = (ChExeEntrypoint mi (nub $ os1++es2++os2++ss2)) +combineEp me e = error $ "combineEp: undhandled case: " ++ show (me, e) -- no, you unconditionally always wrap the result in Just, so instead of `f x = Just y; f x = Just z` do `f x = y; f x = z` and use f as `Just . f` -- cgit v1.2.3