{
StgTSO *next;
- ASSERT(get_itbl(tso)->type == TSO);
+ // NO, might be a WHITEHOLE: ASSERT(get_itbl(tso)->type == TSO);
ASSERT(tso->why_blocked != NotBlocked);
tso->why_blocked = NotBlocked;
* used by Control.Concurrent for error checking.
* ------------------------------------------------------------------------- */
-StgBool
+HsBool
rtsSupportsBoundThreads(void)
{
#if defined(THREADED_RTS)
- return rtsTrue;
+ return HS_BOOL_TRUE;
#else
- return rtsFalse;
+ return HS_BOOL_FALSE;
#endif
}
debugBelch("is blocked on an MVar @ %p", tso->block_info.closure);
break;
case BlockedOnException:
- debugBelch("is blocked on delivering an exception to thread %d",
- tso->block_info.tso->id);
+ debugBelch("is blocked on delivering an exception to thread %lu",
+ (unsigned long)tso->block_info.tso->id);
break;
case BlockedOnBlackHole:
debugBelch("is blocked on a black hole");
void
printThreadStatus(StgTSO *t)
{
- debugBelch("\tthread %4d @ %p ", t->id, (void *)t);
+ debugBelch("\tthread %4lu @ %p ", (unsigned long)t->id, (void *)t);
{
void *label = lookupThreadLabel(t->id);
if (label) debugBelch("[\"%s\"] ",(char *)label);