@@ -48,6 +48,7 @@ import Data.Function (on)
4848import Data.List (sortBy, groupBy)
4949import Data.Maybe (fromMaybe)
5050import Data.Time.Clock
51+import Data.Foldable (for_)
5152import Data.Traversable (traverse)
5253import Data.Version (showVersion)
5354import qualified Data.Map as M
@@ -148,7 +149,6 @@ make :: forall m. (Functor m, Applicative m, Monad m, MonadReader Options m, Mon
148149 -> m Environment
149150make MakeActions{..} ms = do
150151 (sorted, graph) <- sortModules $ map importPrim ms
151− mapM_ lint sorted
152152 toRebuild <- foldM (\s (Module _ moduleName' _ _) -> do
153153 inputTimestamp <- getInputTimestamp moduleName'
154154 outputTimestamp <- getOutputTimestamp moduleName'
@@ -158,6 +158,7 @@ make MakeActions{..} ms = do
158158 _ -> S.insert moduleName' s) S.empty sorted
159159
160160 marked <- rebuildIfNecessary (reverseDependencies graph) toRebuild sorted
161+ for_ marked $ \(willRebuild, m) -> when willRebuild (lint m)
161162 (desugared, nextVar) <- runSupplyT 0 $ zip (map fst marked) <$> desugar (map snd marked)
162163 evalSupplyT nextVar $ go initEnvironment desugared
163164 where