This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
op.c: ck_grep does not need to call listkids
[perl5.git] / doio.c
diff --git a/doio.c b/doio.c
index 6890d12..fd6683d 100644 (file)
--- a/doio.c
+++ b/doio.c
@@ -1579,7 +1579,7 @@ Perl_apply(pTHX_ I32 type, register SV **mark, register SV **sp)
     const char *s;
     STRLEN len;
     SV ** const oldmark = mark;
-    bool killgp = false;
+    bool killgp = FALSE;
 
     PERL_ARGS_ASSERT_APPLY;
 
@@ -1694,7 +1694,7 @@ nothing in the core.
        {
            s++;
            len--;
-            killgp = true;
+            killgp = TRUE;
        }
        if (isALPHA(*s)) {
            if (*s == 'S' && s[1] == 'I' && s[2] == 'G') {
@@ -1709,7 +1709,7 @@ nothing in the core.
            val = SvIV(*mark);
            if (val < 0)
            {
-               killgp = true;
+               killgp = TRUE;
                 val = -val;
            }
        }
@@ -1750,9 +1750,9 @@ nothing in the core.
        }
 #endif
        while (++mark <= sp) {
-           I32 proc;
+           Pid_t proc;
            SvGETMAGIC(*mark);
-           if (!(SvIOK(*mark) || SvNOK(*mark) || looks_like_number(*mark)))
+           if (!(SvNIOK(*mark) || looks_like_number(*mark)))
                Perl_croak(aTHX_ "Can't kill a non-numeric process ID");
            proc = SvIV_nomg(*mark);
            if (killgp)
@@ -2283,9 +2283,10 @@ Perl_do_shmio(pTHX_ I32 optype, SV **mark, SV **sp)
     if (optype == OP_SHMREAD) {
        char *mbuf;
        /* suppress warning when reading into undef var (tchrist 3/Mar/00) */
+       SvGETMAGIC(mstr);
+       SvUPGRADE(mstr, SVt_PV);
        if (! SvOK(mstr))
            sv_setpvs(mstr, "");
-       SvUPGRADE(mstr, SVt_PV);
        SvPOK_only(mstr);
        mbuf = SvGROW(mstr, (STRLEN)msize+1);