summaryrefslogtreecommitdiff
path: root/scope.h
diff options
context:
space:
mode:
Diffstat (limited to 'scope.h')
-rw-r--r--scope.h21
1 files changed, 3 insertions, 18 deletions
diff --git a/scope.h b/scope.h
index e910388c8b..6eddb19422 100644
--- a/scope.h
+++ b/scope.h
@@ -174,12 +174,7 @@ Closing bracket on a callback. See C<ENTER> and L<perlcall>.
SSPUSHINT(SAVEt_HINTS); \
} STMT_END
-#define SAVECOMPPAD() \
- STMT_START { \
- SSCHECK(2); \
- SSPUSHPTR(MUTABLE_SV(PL_comppad)); \
- SSPUSHINT(SAVEt_COMPPAD); \
- } STMT_END
+#define SAVECOMPPAD() save_pushptr(MUTABLE_SV(PL_comppad), SAVEt_COMPPAD)
#define SAVESWITCHSTACK(f,t) \
STMT_START { \
@@ -204,12 +199,7 @@ Closing bracket on a callback. See C<ENTER> and L<perlcall>.
could have done savefreesharedpvREF, but this way actually seems cleaner,
as it simplifies the code that does the saves, and reduces the load on the
save stack. */
-#define SAVECOMPILEWARNINGS() \
- STMT_START { \
- SSCHECK(2); \
- SSPUSHPTR(PL_compiling.cop_warnings); \
- SSPUSHINT(SAVEt_COMPILE_WARNINGS); \
- } STMT_END
+#define SAVECOMPILEWARNINGS() save_pushptr(PL_compiling.cop_warnings, SAVEt_COMPILE_WARNINGS)
#define SAVESTACK_CXPOS() \
STMT_START { \
@@ -219,12 +209,7 @@ Closing bracket on a callback. See C<ENTER> and L<perlcall>.
SSPUSHINT(SAVEt_STACK_CXPOS); \
} STMT_END
-#define SAVEPARSER(p) \
- STMT_START { \
- SSCHECK(2); \
- SSPUSHPTR(p); \
- SSPUSHINT(SAVEt_PARSER); \
- } STMT_END
+#define SAVEPARSER(p) save_pushptr((p), SAVEt_PARSER)
#ifdef USE_ITHREADS
# define SAVECOPSTASH(c) SAVEPPTR(CopSTASHPV(c))