summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pp.c2
-rw-r--r--pp.h13
-rw-r--r--t/lib/warnings/9uninit24
3 files changed, 16 insertions, 23 deletions
diff --git a/pp.c b/pp.c
index 9858f91b48..8b15b6ec5f 100644
--- a/pp.c
+++ b/pp.c
@@ -3082,7 +3082,7 @@ PP(pp_atan2)
dVAR; dSP; dTARGET;
tryAMAGICbin_MG(atan2_amg, 0);
{
- dPOPTOPnnrl_halfmg;
+ dPOPTOPnnrl_nomg;
SETn(Perl_atan2(left, right));
RETURN;
}
diff --git a/pp.h b/pp.h
index ca45f61687..5cde92b047 100644
--- a/pp.h
+++ b/pp.h
@@ -355,10 +355,9 @@ Does not use C<TARG>. See also C<XPUSHu>, C<mPUSHu> and C<PUSHu>.
SV *leftsv = CAT2(X,s); \
IV left = USE_LEFT(leftsv) ? SvIV(leftsv) : 0
#define dPOPXiirl_ul_nomg(X) \
- SV *rightsv = POPs; \
+ IV right = (sp--, SvIV_nomg(TOPp1s)); \
SV *leftsv = CAT2(X,s); \
- IV left = USE_LEFT(leftsv) ? SvIV_nomg(leftsv) : 0; \
- IV right = SvIV_nomg(rightsv)
+ IV left = USE_LEFT(leftsv) ? SvIV_nomg(leftsv) : 0
#define dPOPPOPssrl dPOPXssrl(POP)
#define dPOPPOPnnrl dPOPXnnrl(POP)
@@ -371,17 +370,11 @@ Does not use C<TARG>. See also C<XPUSHu>, C<mPUSHu> and C<PUSHu>.
#define dPOPTOPnnrl_ul dPOPXnnrl_ul(TOP)
#define dPOPTOPnnrl_nomg \
NV right = SvNV_nomg(TOPs); NV left = (sp--, SvNV_nomg(TOPs))
-#ifdef PERL_CORE
-# define dPOPTOPnnrl_halfmg \
- NV left = SvNV_nomg(TOPm1s); \
- NV right = TOPs == TOPm1s ? SvNV(TOPs) : SvNV_nomg(TOPs); sp--
-#endif
#define dPOPTOPiirl dPOPXiirl(TOP)
#define dPOPTOPiirl_ul dPOPXiirl_ul(TOP)
#define dPOPTOPiirl_ul_nomg dPOPXiirl_ul_nomg(TOP)
#define dPOPTOPiirl_nomg \
- IV left = SvIV_nomg(TOPm1s); \
- IV right = (sp--, TOPp1s == TOPs ? SvIV(TOPs) : SvIV_nomg(TOPp1s))
+ IV right = SvIV_nomg(TOPs); IV left = (sp--, SvIV_nomg(TOPs))
#define RETPUSHYES RETURNX(PUSHs(&PL_sv_yes))
#define RETPUSHNO RETURNX(PUSHs(&PL_sv_no))
diff --git a/t/lib/warnings/9uninit b/t/lib/warnings/9uninit
index b73edf47de..ff6736f760 100644
--- a/t/lib/warnings/9uninit
+++ b/t/lib/warnings/9uninit
@@ -556,31 +556,31 @@ $v = $m1 != $g1;
$v = $m1 <=> $g1;
$v = -$m1;
EXPECT
-Use of uninitialized value $m1 in integer addition (+) at - line 6.
Use of uninitialized value $g1 in integer addition (+) at - line 6.
-Use of uninitialized value $m1 in integer subtraction (-) at - line 7.
+Use of uninitialized value $m1 in integer addition (+) at - line 6.
Use of uninitialized value $g1 in integer subtraction (-) at - line 7.
-Use of uninitialized value $m1 in integer multiplication (*) at - line 8.
+Use of uninitialized value $m1 in integer subtraction (-) at - line 7.
Use of uninitialized value $g1 in integer multiplication (*) at - line 8.
+Use of uninitialized value $m1 in integer multiplication (*) at - line 8.
Use of uninitialized value $g1 in integer division (/) at - line 9.
Use of uninitialized value $m2 in integer division (/) at - line 10.
-Use of uninitialized value $m1 in integer modulus (%) at - line 11.
Use of uninitialized value $g1 in integer modulus (%) at - line 11.
+Use of uninitialized value $m1 in integer modulus (%) at - line 11.
Use of uninitialized value $m2 in integer modulus (%) at - line 12.
-Use of uninitialized value $m1 in integer lt (<) at - line 13.
Use of uninitialized value $g1 in integer lt (<) at - line 13.
-Use of uninitialized value $m1 in integer gt (>) at - line 14.
+Use of uninitialized value $m1 in integer lt (<) at - line 13.
Use of uninitialized value $g1 in integer gt (>) at - line 14.
-Use of uninitialized value $m1 in integer le (<=) at - line 15.
+Use of uninitialized value $m1 in integer gt (>) at - line 14.
Use of uninitialized value $g1 in integer le (<=) at - line 15.
-Use of uninitialized value $m1 in integer ge (>=) at - line 16.
+Use of uninitialized value $m1 in integer le (<=) at - line 15.
Use of uninitialized value $g1 in integer ge (>=) at - line 16.
-Use of uninitialized value $m1 in integer eq (==) at - line 17.
+Use of uninitialized value $m1 in integer ge (>=) at - line 16.
Use of uninitialized value $g1 in integer eq (==) at - line 17.
-Use of uninitialized value $m1 in integer ne (!=) at - line 18.
+Use of uninitialized value $m1 in integer eq (==) at - line 17.
Use of uninitialized value $g1 in integer ne (!=) at - line 18.
-Use of uninitialized value $m1 in integer comparison (<=>) at - line 19.
+Use of uninitialized value $m1 in integer ne (!=) at - line 18.
Use of uninitialized value $g1 in integer comparison (<=>) at - line 19.
+Use of uninitialized value $m1 in integer comparison (<=>) at - line 19.
Use of uninitialized value $m1 in integer negation (-) at - line 20.
########
use warnings 'uninitialized';
@@ -927,8 +927,8 @@ $v = oct $m1;
$v = oct;
$v = length; # does not warn
EXPECT
-Use of uninitialized value $m1 in atan2 at - line 5.
Use of uninitialized value $g1 in atan2 at - line 5.
+Use of uninitialized value $m1 in atan2 at - line 5.
Use of uninitialized value $m1 in sin at - line 6.
Use of uninitialized value $m1 in cos at - line 7.
Use of uninitialized value $m1 in rand at - line 8.