summaryrefslogtreecommitdiff
path: root/rts/Weak.h
diff options
context:
space:
mode:
authorSimon Marlow <marlowsd@gmail.com>2008-12-10 15:04:25 +0000
committerSimon Marlow <marlowsd@gmail.com>2008-12-10 15:04:25 +0000
commit6c095bfa3c8c81b52ad92853acd326453d320d7b (patch)
tree3f7658288a4f7f0744bb4959ca5a6113cf02babd /rts/Weak.h
parentd4a17c3a253d02c2ebf2315e71a29cb740278977 (diff)
downloadhaskell-6c095bfa3c8c81b52ad92853acd326453d320d7b.tar.gz
FIX #1364: added support for C finalizers that run as soon as the value is not longer reachable.
Patch originally by Ivan Tomac <tomac@pacific.net.au>, amended by Simon Marlow: - mkWeakFinalizer# commoned up with mkWeakFinalizerEnv# - GC parameters to ALLOC_PRIM fixed
Diffstat (limited to 'rts/Weak.h')
-rw-r--r--rts/Weak.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/rts/Weak.h b/rts/Weak.h
index ba8c1ca913..cf93b4df9e 100644
--- a/rts/Weak.h
+++ b/rts/Weak.h
@@ -11,6 +11,8 @@
#include "Capability.h"
+void runCFinalizer(StgVoid *fn, StgVoid *ptr, StgVoid *env, StgWord flag);
+void runAllCFinalizers(StgWeak *w);
void scheduleFinalizers(Capability *cap, StgWeak *w);
void markWeakList(void);