summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pp.c3
-rw-r--r--pp_ctl.c6
2 files changed, 4 insertions, 5 deletions
diff --git a/pp.c b/pp.c
index e2a70151b3..dd47b7330a 100644
--- a/pp.c
+++ b/pp.c
@@ -6748,8 +6748,7 @@ PP(pp_coreargs)
to come in between two things this function does (stack reset and
arg pushing). This seems the easiest way to do it. */
if (pushmark) {
- PUTBACK;
- (void)Perl_pp_pushmark(aTHX);
+ PUSHMARK(SP);
}
EXTEND(SP, maxargs == I32_MAX ? numargs : maxargs);
diff --git a/pp_ctl.c b/pp_ctl.c
index a7a0cea607..b16afcebcd 100644
--- a/pp_ctl.c
+++ b/pp_ctl.c
@@ -978,8 +978,8 @@ PP(pp_grepstart)
RETURNOP(PL_op->op_next->op_next);
}
PL_stack_sp = PL_stack_base + TOPMARK + 1;
- Perl_pp_pushmark(aTHX); /* push dst */
- Perl_pp_pushmark(aTHX); /* push src */
+ PUSHMARK(PL_stack_sp); /* push dst */
+ PUSHMARK(PL_stack_sp); /* push src */
ENTER_with_name("grep"); /* enter outer scope */
SAVETMPS;
@@ -997,7 +997,7 @@ PP(pp_grepstart)
PUTBACK;
if (PL_op->op_type == OP_MAPSTART)
- Perl_pp_pushmark(aTHX); /* push top */
+ PUSHMARK(PL_stack_sp); /* push top */
return cLOGOPx(PL_op->op_next)->op_other;
}