Commit ddd8dea0 authored by Simon Marlow's avatar Simon Marlow

fix pointer tagging bug in removeIndirections (fixes stableptr003)

parent bf0ab2d9
......@@ -195,9 +195,11 @@ removeIndirections(StgClosure* p)
get_itbl(q)->type == IND_OLDGEN ||
get_itbl(q)->type == IND_PERM ||
get_itbl(q)->type == IND_OLDGEN_PERM ) {
q = ((StgInd *)q)->indirectee;
tag = GET_CLOSURE_TAG(q);
q = UNTAG_CLOSURE(((StgInd *)q)->indirectee);
q = UNTAG_CLOSURE(q);
}
return TAG_CLOSURE(tag,q);
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment