From: Rafael Garcia-Suarez Date: Tue, 21 Jul 2009 12:02:25 +0000 (+0200) Subject: Simplify the code that sets $_ in given() X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=bb74b0ee4e732d7f05e2d9e9690a7ada65f6039e;p=p5sagit%2Fp5-mst-13.2.git Simplify the code that sets $_ in given() $_ is guaranteed to be lexical here, because the parser did an allocmy when parsing the given() statement. --- diff --git a/pp_ctl.c b/pp_ctl.c index eab9624..ebfcf74 100644 --- a/pp_ctl.c +++ b/pp_ctl.c @@ -3911,13 +3911,7 @@ PP(pp_entergiven) ENTER; SAVETMPS; - if (PL_op->op_targ == 0) { - SV ** const defsv_p = &GvSV(PL_defgv); - *defsv_p = newSVsv(POPs); - SAVECLEARSV(*defsv_p); - } - else - sv_setsv(PAD_SV(PL_op->op_targ), POPs); + sv_setsv(PAD_SV(PL_op->op_targ), POPs); PUSHBLOCK(cx, CXt_GIVEN, SP); PUSHGIVEN(cx);