From: simonmar@microsoft.com Date: Wed, 30 Jan 2008 15:09:34 +0000 (+0000) Subject: comment out a bogus assertion X-Git-Tag: Before_cabalised-GHC~250 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=a668cd2e97fbdab05aa57f88d6be2358b3136023;p=ghc-hetmet.git comment out a bogus assertion --- diff --git a/rts/sm/Evac.c b/rts/sm/Evac.c index 2ea4c28..ee88175 100644 --- a/rts/sm/Evac.c +++ b/rts/sm/Evac.c @@ -169,8 +169,11 @@ unchain_thunk_selectors(StgSelector *p, StgClosure *val) #else ASSERT(p->header.info == &stg_BLACKHOLE_info); #endif - // val must be in to-space. - ASSERT(!HEAP_ALLOCED(val) || Bdescr((P_)val)->gen_no > N || (Bdescr((P_)val)->flags & BF_EVACUATED)); + // val must be in to-space. Not always: when we recursively + // invoke eval_thunk_selector(), the recursive calls will not + // evacuate the value (because we want to select on the value, + // not evacuate it), so in this case val is in from-space. + // ASSERT(!HEAP_ALLOCED(val) || Bdescr((P_)val)->gen_no > N || (Bdescr((P_)val)->flags & BF_EVACUATED)); prev = (StgSelector*)((StgClosure *)p)->payload[0];