Change 18264 by rgs@rgs-home on 2002/12/08 22:04:39

        Subject: Re: [perl #18165] "0" fails as right-hand argument to ..
        From: Slaven Rezic <[EMAIL PROTECTED]>
        Date: 30 Nov 2002 00:07:05 +0100
        Message-ID: <[EMAIL PROTECTED]>

Affected files ...

.... //depot/perl/pp_ctl.c#329 edit
.... //depot/perl/t/cmd/for.t#8 edit

Differences ...

==== //depot/perl/pp_ctl.c#329 (text) ====
Index: perl/pp_ctl.c
--- perl/pp_ctl.c#328~18220~    Sun Dec  1 16:58:54 2002
+++ perl/pp_ctl.c       Sun Dec  8 14:04:39 2002
@@ -1690,11 +1690,11 @@
        cx->blk_loop.iterary = (AV*)SvREFCNT_inc(POPs);
        if (SvTYPE(cx->blk_loop.iterary) != SVt_PVAV) {
            dPOPss;
+           /* See comment in pp_flop() */
            if (SvNIOKp(sv) || !SvPOKp(sv) ||
                SvNIOKp(cx->blk_loop.iterary) || !SvPOKp(cx->blk_loop.iterary) ||
                (looks_like_number(sv) && *SvPVX(sv) != '0' &&
-                looks_like_number((SV*)cx->blk_loop.iterary) &&
-                *SvPVX(cx->blk_loop.iterary) != '0'))
+                looks_like_number((SV*)cx->blk_loop.iterary)))
            {
                 if (SvNV(sv) < IV_MIN ||
                     SvNV((SV*)cx->blk_loop.iterary) >= IV_MAX)

==== //depot/perl/t/cmd/for.t#8 (xtext) ====
Index: perl/t/cmd/for.t
--- perl/t/cmd/for.t#7~10069~   Thu May 10 05:24:06 2001
+++ perl/t/cmd/for.t    Sun Dec  8 14:04:39 2002
@@ -1,6 +1,6 @@
 #!./perl
 
-print "1..11\n";
+print "1..12\n";
 
 for ($i = 0; $i <= 10; $i++) {
     $x[$i] = $i;
@@ -66,3 +66,8 @@
 }
 print $a == 7 ? "ok" : "not ok", " 11\n";
 
+$loop_count = 0;
+for ("-3" .. "0") {
+    $loop_count++;
+}
+print $loop_count == 4 ? "ok" : "not ok", " 12\n";
End of Patch.

Reply via email to