print/printf/... over-eager mg_find for glob magic:
[p5sagit/p5-mst-13.2.git] / op.c
diff --git a/op.c b/op.c
index c6e1cfe..47f2f57 100644 (file)
--- a/op.c
+++ b/op.c
@@ -3440,9 +3440,9 @@ newSUB(I32 floor, OP *o, OP *proto, OP *block)
            CV *cv;
            HV *hv;
 
-           sv_setpvf(sv, "%_:%ld-%ld", GvSV(curcop->cop_filegv),
-                   (long)(subline < 0 ? -subline : subline),
-                   (long)curcop->cop_line);
+           sv_setpvf(sv, "%_:%ld-%ld",
+                   GvSV(curcop->cop_filegv),
+                   (long)subline, (long)curcop->cop_line);
            gv_efullname3(tmpstr, gv, Nullch);
            hv_store(GvHV(DBsub), SvPVX(tmpstr), SvCUR(tmpstr), sv, 0);
            hv = GvHVn(db_postponed);
@@ -3873,6 +3873,8 @@ ck_eval(OP *o)
            enter->op_other = o;
            return o;
        }
+       else
+           scalar((OP*)kid);
     }
     else {
        op_free(o);