From: Nicholas Clark Date: Sat, 26 Jan 2008 15:14:25 +0000 (+0000) Subject: In POPLOOP, if CxITERVAR(cx) is non-NULL, then so is itersave, and X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=b99874c7926b2f5919256cf4bcee8eb7bf3dff22;p=p5sagit%2Fp5-mst-13.2.git In POPLOOP, if CxITERVAR(cx) is non-NULL, then so is itersave, and itersave is a less complex expression for the C compiler. p4raw-id: //depot/perl@33074 --- diff --git a/cop.h b/cop.h index b9ca6c3..48f9d5b 100644 --- a/cop.h +++ b/cop.h @@ -514,15 +514,12 @@ struct block_loop { SvREFCNT_dec(cx->blk_loop.state_u.lazysv.cur); \ SvREFCNT_dec(cx->blk_loop.state_u.lazysv.end); \ } \ - if (CxITERVAR(cx)) { \ + if (cx->blk_loop.itersave) { \ if (SvPADMY(cx->blk_loop.itersave)) { \ SV ** const s_v_p = CxITERVAR(cx); \ sv_2mortal(*s_v_p); \ *s_v_p = cx->blk_loop.itersave; \ } \ - else { \ - SvREFCNT_dec(cx->blk_loop.itersave); \ - } \ } \ if (CxTYPE(cx) == CXt_LOOP_FOR) \ SvREFCNT_dec(cx->blk_loop.state_u.ary.ary);