summaryrefslogtreecommitdiff
path: root/compiler/iface/IfaceEnv.hs
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/iface/IfaceEnv.hs')
-rw-r--r--compiler/iface/IfaceEnv.hs7
1 files changed, 2 insertions, 5 deletions
diff --git a/compiler/iface/IfaceEnv.hs b/compiler/iface/IfaceEnv.hs
index efd4956b70..f647e35707 100644
--- a/compiler/iface/IfaceEnv.hs
+++ b/compiler/iface/IfaceEnv.hs
@@ -34,9 +34,8 @@ import SrcLoc
import Util
import Outputable
-import Exception ( evaluate )
-import Data.IORef ( atomicModifyIORef, readIORef )
+import Data.IORef ( atomicModifyIORef' )
{-
*********************************************************
@@ -233,9 +232,7 @@ newtype NameCacheUpdater = NCU { updateNameCache :: forall c. (NameCache -> (Nam
mkNameCacheUpdater :: TcRnIf a b NameCacheUpdater
mkNameCacheUpdater = do
nc_var <- hsc_NC `fmap` getTopEnv
- let update_nc f = do r <- atomicModifyIORef nc_var f
- _ <- evaluate =<< readIORef nc_var
- return r
+ let update_nc f = atomicModifyIORef' nc_var f
return (NCU update_nc)
initNameCache :: UniqSupply -> [Name] -> NameCache