From: Jarkko Hietaniemi Date: Mon, 26 Mar 2001 22:01:18 +0000 (+0000) Subject: pp_ncmp() and pp_scmp() should return numeric values, not booleans. X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=34d3ce40eab82fa6d52f54ff00b07b8cce11a920;p=p5sagit%2Fp5-mst-13.2.git pp_ncmp() and pp_scmp() should return numeric values, not booleans. Really need to benchmark this. p4raw-id: //depot/perl@9370 --- diff --git a/pp.c b/pp.c index 3372428..a79a1d4 100644 --- a/pp.c +++ b/pp.c @@ -1786,7 +1786,7 @@ PP(pp_ncmp) dSP; dTARGET; tryAMAGICbin(ncmp,0); #ifndef NV_PRESERVES_UV if (SvROK(TOPs) && SvROK(TOPm1s)) { - SETs(boolSV(SvRV(TOPs) == SvRV(TOPm1s))); + SETi(PTR2UV(SvRV(TOPs)) - PTR2UV(SvRV(TOPm1s))); RETURN; } #endif @@ -1972,7 +1972,7 @@ PP(pp_scmp) dSP; dTARGET; tryAMAGICbin(scmp,0); #ifndef NV_PRESERVES_UV if (SvROK(TOPs) && SvROK(TOPm1s)) { - SETs(boolSV(SvRV(TOPs) == SvRV(TOPm1s))); + SETi(PTR2UV(SvRV(TOPs)) - PTR2UV(SvRV(TOPm1s))); RETURN; } #endif