summaryrefslogtreecommitdiff
path: root/pp_hot.c
diff options
context:
space:
mode:
authorFather Chrysostomos <sprout@cpan.org>2013-09-06 12:35:56 -0700
committerFather Chrysostomos <sprout@cpan.org>2013-09-06 23:25:50 -0700
commitde935cc90faecfae2bc1afad24f1b5315a7787a0 (patch)
tree5ec1ecc928c47d5fe0523e9448c5ae2100eae9e1 /pp_hot.c
parent8c9d3376fbfa04ec0e0e2164dcf7d9e824cf0e94 (diff)
downloadperl-de935cc90faecfae2bc1afad24f1b5315a7787a0.tar.gz
Allow 64-bit array and stack offsets in entersub & goto
I don’t have enough memory to test this, but it needs to be done even- tually anyway.
Diffstat (limited to 'pp_hot.c')
-rw-r--r--pp_hot.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/pp_hot.c b/pp_hot.c
index 03ce10263d..d3f8976f9b 100644
--- a/pp_hot.c
+++ b/pp_hot.c
@@ -2640,7 +2640,7 @@ try_autoload:
if (!(CvISXSUB(cv))) {
/* This path taken at least 75% of the time */
dMARK;
- I32 items = SP - MARK;
+ SSize_t items = SP - MARK;
PADLIST * const padlist = CvPADLIST(cv);
PUSHBLOCK(cx, CXt_SUB, MARK);
PUSHSUB(cx);
@@ -2703,7 +2703,7 @@ try_autoload:
RETURNOP(CvSTART(cv));
}
else {
- I32 markix = TOPMARK;
+ SSize_t markix = TOPMARK;
SAVETMPS;
PUTBACK;
@@ -2719,7 +2719,7 @@ try_autoload:
* switch stack to @_, and copy return values
* back. This would allow popping @_ in XSUB, e.g.. XXXX */
AV * const av = GvAV(PL_defgv);
- const I32 items = AvFILLp(av) + 1; /* @_ is not tieable */
+ const SSize_t items = AvFILLp(av) + 1; /* @_ is not tieable */
if (items) {
SSize_t i = 0;
@@ -2736,7 +2736,7 @@ try_autoload:
}
else {
SV **mark = PL_stack_base + markix;
- I32 items = SP - mark;
+ SSize_t items = SP - mark;
while (items--) {
mark++;
if (*mark && SvPADTMP(*mark) && !IS_PADGV(*mark))