summaryrefslogtreecommitdiff
path: root/rts/sm/MarkWeak.c
diff options
context:
space:
mode:
authorIan Lynagh <ian@well-typed.com>2012-08-25 11:31:50 +0100
committerIan Lynagh <ian@well-typed.com>2012-08-25 11:31:50 +0100
commit8413d83859ee0120e52bb1b3cd775b7344b52c76 (patch)
tree4a4280e8065955b3e08b303fa416587990b68824 /rts/sm/MarkWeak.c
parent75f2e87bd7b6b8c0143addc59abfe68456e59591 (diff)
downloadhaskell-8413d83859ee0120e52bb1b3cd775b7344b52c76.tar.gz
Make a function for get_itbl, rather than using a CPP macro
This has several advantages: * It can be called from gdb * There is more type information for the user, and type checking for the compiler * Less opportunity for things to go wrong, e.g. due to missing parentheses or repeated execution The sizes of the non-debug .o files hasn't changed (other than Inlines.o), so I'm pretty sure the compiled code is identical.
Diffstat (limited to 'rts/sm/MarkWeak.c')
-rw-r--r--rts/sm/MarkWeak.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/rts/sm/MarkWeak.c b/rts/sm/MarkWeak.c
index b7d6226ee7..d57f7a094b 100644
--- a/rts/sm/MarkWeak.c
+++ b/rts/sm/MarkWeak.c
@@ -127,7 +127,7 @@ traverseWeakPtrList(void)
continue;
}
- info = get_itbl(w);
+ info = get_itbl((StgClosure *)w);
switch (info->type) {
case WEAK:
@@ -269,7 +269,7 @@ static rtsBool tidyThreadList (generation *gen)
t = tmp;
}
- ASSERT(get_itbl(t)->type == TSO);
+ ASSERT(get_itbl((StgClosure *)t)->type == TSO);
next = t->global_link;
// if the thread is not masking exceptions but there are