X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=rts%2FThreads.c;h=d7b5f4168e7cdc91e9ef78b0b2ed8b8fab013f93;hp=b550cc6aaa706d43e8dda8ad68bea9fac9504468;hb=45202530612593a0ba7a6c559a38dc1ff26670a4;hpb=b1953bbb1ed3cb16497e5447db7487f0c2d9e41a diff --git a/rts/Threads.c b/rts/Threads.c index b550cc6..d7b5f41 100644 --- a/rts/Threads.c +++ b/rts/Threads.c @@ -485,7 +485,7 @@ unblockOne_ (Capability *cap, StgTSO *tso, { 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; @@ -657,13 +657,13 @@ awakenBlockedQueue(Capability *cap, StgTSO *tso) * 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 } @@ -707,8 +707,8 @@ printThreadBlockage(StgTSO *tso) 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"); @@ -744,7 +744,7 @@ printThreadBlockage(StgTSO *tso) 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);