git.iko.soy/rowtype-yoga/purescript-native
on golang help sign in
Merge pull request #1587 from purescript/1578
3295c37Phil Freeman
src/Language/PureScript/Sugar/Names.hs+6−2
@@ -22,11 +22,12 @@ import Data.List (find, nub)
22import Data.Maybe (fromMaybe, mapMaybe)
22import Data.Maybe (fromMaybe, mapMaybe)
23
23
24#if __GLASGOW_HASKELL__ < 710
24#if __GLASGOW_HASKELL__ < 710
25+import Data.Monoid (mempty)
25import Control.Applicative (Applicative(..), (<$>), (<*>))
26import Control.Applicative (Applicative(..), (<$>), (<*>))
26#endif
27#endif
27import Control.Monad
28import Control.Monad
28import Control.Monad.Error.Class (MonadError(..))
29import Control.Monad.Error.Class (MonadError(..))
29−import Control.Monad.Writer (MonadWriter(..))
30+import Control.Monad.Writer (MonadWriter(..), censor)
30
31
31import qualified Data.Map as M
32import qualified Data.Map as M
32
33
@@ -47,10 +48,13 @@ import Language.PureScript.Sugar.Names.Exports
47--
48--
48desugarImports :: forall m. (Applicative m, MonadError MultipleErrors m, MonadWriter MultipleErrors m) => [ExternsFile] -> [Module] -> m [Module]
49desugarImports :: forall m. (Applicative m, MonadError MultipleErrors m, MonadWriter MultipleErrors m) => [ExternsFile] -> [Module] -> m [Module]
49desugarImports externs modules = do
50desugarImports externs modules = do
50− env <- foldM externsEnv primEnv externs
51+ env <- silence $ foldM externsEnv primEnv externs
51 env' <- foldM updateEnv env modules
52 env' <- foldM updateEnv env modules
52 mapM (renameInModule' env') modules
53 mapM (renameInModule' env') modules
53 where
54 where
55+ silence :: m a -> m a
56+ silence = censor (const mempty)
57+
54 -- | Create an environment from a collection of externs files
58 -- | Create an environment from a collection of externs files
55 externsEnv :: Env -> ExternsFile -> m Env
59 externsEnv :: Env -> ExternsFile -> m Env
56 externsEnv env ExternsFile{..} = do
60 externsEnv env ExternsFile{..} = do