git.iko.soy/rowtype-yoga/purescript-native
on golang help sign in
Fix double-warning issue
commit6a378be5ac331db09ccc72e88228e4e55eb369c0 authorPhil Freeman <paf31@cantab.net> dateMon 26 Oct 2015, 14:13 (11 years ago) parentbd2e583
2 files changed+4−7
src/Control/Monad/Logger.hs+3−5 src/Language/PureScript/Make.hs+1−2
src/Control/Monad/Logger.hs+3−5
@@ -57,15 +57,13 @@ instance (Monoid w) => MonadIO (Logger w) where
5757 liftIO = Logger . const
5858
5959instance (Monoid w) => MonadWriter w (Logger w) where
60− tell w = Logger $ \r -> modifyIORef' r (mappend w)
60+ tell w = Logger $ \r -> atomicModifyIORef' r $ \w' -> (mappend w' w, ())
6161 listen l = Logger $ \r -> do
6262 (a, w) <- liftIO (runLogger' l)
63− modifyIORef' r (mappend w)
64− return (a, w)
63+ atomicModifyIORef' r $ \w' -> (mappend w' w, (a, w))
6564 pass l = Logger $ \r -> do
6665 ((a, f), w) <- liftIO (runLogger' l)
67− modifyIORef' r (mappend (f w))
68− return a
66+ atomicModifyIORef' r $ \w' -> (mappend w' (f w), a)
6967
7068instance (Monoid w) => MonadBase IO (Logger w) where
7169 liftBase = liftIO
src/Language/PureScript/Make.hs+1−2
@@ -178,8 +178,7 @@ make MakeActions{..} ms = do
178178 unless (null errors) $ throwError (mconcat errors)
179179
180180 -- Bundle up all the externs and return them as an Environment
181− (warnings, externs) <- unzip . fromMaybe (internalError "make: externs were missing but no errors reported.") . sequence <$> for barriers (takeMVar . fst . snd)
182− tell (mconcat warnings)
181+ (_, externs) <- unzip . fromMaybe (internalError "make: externs were missing but no errors reported.") . sequence <$> for barriers (takeMVar . fst . snd)
183182 return $ foldl' (flip applyExternsFileToEnvironment) initEnvironment externs
184183
185184 where