summaryrefslogtreecommitdiff
path: root/rts/HeapStackCheck.cmm
diff options
context:
space:
mode:
Diffstat (limited to 'rts/HeapStackCheck.cmm')
-rw-r--r--rts/HeapStackCheck.cmm6
1 files changed, 5 insertions, 1 deletions
diff --git a/rts/HeapStackCheck.cmm b/rts/HeapStackCheck.cmm
index b3ae2648d9..fbceb7691a 100644
--- a/rts/HeapStackCheck.cmm
+++ b/rts/HeapStackCheck.cmm
@@ -221,7 +221,11 @@ INFO_TABLE_RET ( stg_enter_checkbh, RET_SMALL,
{
foreign "C" checkBlockingQueues(MyCapability() "ptr",
CurrentTSO);
- return (updatee);
+
+ // we need to return updatee now. Note that it might be a pointer
+ // to an indirection or a tagged value, we don't know which, so we
+ // need to ENTER() rather than return().
+ ENTER(updatee);
}
/* -----------------------------------------------------------------------------