@@ -10,6 +10,8 @@ import qualified Data.IntMap.Strict as IntMap
10import Data.IORef
10import Data.IORef
11import System.Mem.Weak
11import System.Mem.Weak
13+import Prelude hiding (mapM_)
13data WeakBag a = WeakBag
15data WeakBag a = WeakBag
14 { _weakBag_nextId :: {-# UNPACK #-} !(TVar Int) --TODO: what if this wraps around?
16 { _weakBag_nextId :: {-# UNPACK #-} !(TVar Int) --TODO: what if this wraps around?
15 , _weakBag_children :: {-# UNPACK #-} !(TVar (IntMap (Weak a)))
17 , _weakBag_children :: {-# UNPACK #-} !(TVar (IntMap (Weak a)))