Long-standing "defined but not used" SvPVbyte*() are about to get used
[p5sagit/p5-mst-13.2.git] / pp.h
diff --git a/pp.h b/pp.h
index b05e6d0..5dbc09c 100644 (file)
--- a/pp.h
+++ b/pp.h
@@ -55,6 +55,7 @@ Refetch the stack pointer.  Used after a callback.  See L<perlcall>.
 
 =cut */
 
+#undef SP /* Solaris 2.7 i386 has this in /usr/include/sys/reg.h */
 #define SP sp
 #define MARK mark
 #define TARG targ
@@ -66,8 +67,8 @@ Refetch the stack pointer.  Used after a callback.  See L<perlcall>.
 #define TOPMARK                (*PL_markstack_ptr)
 #define POPMARK                (*PL_markstack_ptr--)
 
-#define djSP           register SV **sp = PL_stack_sp
-#define dSP            djSP
+#define dSP            register SV **sp = PL_stack_sp
+#define djSP           dSP
 #define dMARK          register SV **mark = PL_stack_base + POPMARK
 #define dORIGMARK      I32 origmark = mark - PL_stack_base
 #define SETORIGMARK    origmark = mark - PL_stack_base
@@ -133,6 +134,7 @@ Pops a long off the stack.
 
 #define TOPs           (*sp)
 #define TOPm1s         (*(sp-1))
+#define TOPp1s         (*(sp+1))
 #define TOPp           (SvPV(TOPs, PL_na))             /* deprecated */
 #define TOPpx          (SvPV(TOPs, n_a))
 #define TOPn           (SvNV(TOPs))