X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Frts%2FException.h;h=083faaf230f5e466ab578364735fc94f9e694b32;hb=1c06c2c1a5fb22b9a1f2d4db85674b8f9bcc8ebb;hp=a2e0027d22e3819743caf1ed3ee9b043ba51927c;hpb=506434abae346eb891a6471c4795d6570a1678ad;p=ghc-hetmet.git diff --git a/ghc/rts/Exception.h b/ghc/rts/Exception.h index a2e0027..083faaf 100644 --- a/ghc/rts/Exception.h +++ b/ghc/rts/Exception.h @@ -1,5 +1,4 @@ /* ----------------------------------------------------------------------------- - * $Id: Exception.h,v 1.6 2003/07/12 00:11:20 sof Exp $ * * (c) The GHC Team, 1998-2000 * @@ -14,7 +13,7 @@ extern const StgRetInfoTable stg_unblockAsyncExceptionszh_ret_info; * indefinitely). Interruptible threads can be sent an exception with * killThread# even if they have async exceptions blocked. */ -static __inline__ int +INLINE_HEADER int interruptible(StgTSO *t) { switch (t->why_blocked) { @@ -27,7 +26,10 @@ interruptible(StgTSO *t) #endif case BlockedOnDelay: return 1; + // NB. Threaded blocked on foreign calls (BlockedOnCCall) are + // *not* interruptible. We can't send these threads an exception. default: return 0; } } +