diff options
author | Father Chrysostomos <sprout@cpan.org> | 2014-12-28 17:32:37 -0800 |
---|---|---|
committer | Father Chrysostomos <sprout@cpan.org> | 2014-12-28 17:50:25 -0800 |
commit | 245d035e08b34a4c906e1a91131a52501d5b72e4 (patch) | |
tree | 5e3efc244eac552b5205a474e17778d7ee8fc332 /pp.c | |
parent | 699e9491db1bc1e807b382c0ece25c3ea5748303 (diff) | |
download | perl-245d035e08b34a4c906e1a91131a52501d5b72e4.tar.gz |
pp.c:pp_negate: No PUTBACK necessary
We don’t manipulate the stack pointer here.
Diffstat (limited to 'pp.c')
-rw-r--r-- | pp.c | 12 |
1 files changed, 6 insertions, 6 deletions
@@ -2263,7 +2263,7 @@ S_negate_string(pTHX) *SvPV_force_nomg(TARG, len) = *s == '-' ? '+' : '-'; } else return FALSE; - SETTARG; PUTBACK; + SETTARG; return TRUE; } @@ -2283,21 +2283,21 @@ PP(pp_negate) /* 2s complement assumption. */ SETi(SvIVX(sv)); /* special case: -((UV)IV_MAX+1) == IV_MIN */ - RETURN; + return NORMAL; } else if (SvUVX(sv) <= IV_MAX) { SETi(-SvIVX(sv)); - RETURN; + return NORMAL; } } else if (SvIVX(sv) != IV_MIN) { SETi(-SvIVX(sv)); - RETURN; + return NORMAL; } #ifdef PERL_PRESERVE_IVUV else { SETu((UV)IV_MIN); - RETURN; + return NORMAL; } #endif } @@ -2308,7 +2308,7 @@ PP(pp_negate) else SETn(-SvNV_nomg(sv)); } - RETURN; + return NORMAL; } PP(pp_not) |