summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--XSUB.h4
-rw-r--r--pp.h4
2 files changed, 4 insertions, 4 deletions
diff --git a/XSUB.h b/XSUB.h
index f7d04a84fa..bff12e3457 100644
--- a/XSUB.h
+++ b/XSUB.h
@@ -115,13 +115,13 @@ is a lexical $_ in scope.
# endif
#endif
-#define dAX const I32 ax = MARK - PL_stack_base + 1
+#define dAX const I32 ax = (I32)(MARK - PL_stack_base + 1)
#define dAXMARK \
I32 ax = POPMARK; \
register SV **mark = PL_stack_base + ax++
-#define dITEMS I32 items = SP - MARK
+#define dITEMS I32 items = (I32)(SP - MARK)
#if defined(lint) && defined(S_SPLINT_S) /* www.splint.org */
# define dXSARGS \
diff --git a/pp.h b/pp.h
index 9c805c68a0..463eda7b55 100644
--- a/pp.h
+++ b/pp.h
@@ -59,7 +59,7 @@ Refetch the stack pointer. Used after a callback. See L<perlcall>.
STMT_START { \
if (++PL_markstack_ptr == PL_markstack_max) \
markstack_grow(); \
- *PL_markstack_ptr = (p) - PL_stack_base; \
+ *PL_markstack_ptr = (I32)((p) - PL_stack_base);\
} STMT_END
#define TOPMARK (*PL_markstack_ptr)
@@ -68,7 +68,7 @@ Refetch the stack pointer. Used after a callback. See L<perlcall>.
#define dSP SV **sp = PL_stack_sp
#define djSP dSP
#define dMARK register SV **mark = PL_stack_base + POPMARK
-#define dORIGMARK const I32 origmark = mark - PL_stack_base
+#define dORIGMARK const I32 origmark = (I32)(mark - PL_stack_base)
#define ORIGMARK (PL_stack_base + origmark)
#define SPAGAIN sp = PL_stack_sp