summaryrefslogtreecommitdiff
path: root/perl.h
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2001-11-20 00:39:02 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2001-11-20 00:39:02 +0000
commitce333219556f6d529f7e259feeb5cc99020a19a7 (patch)
tree2360cad6b95170ea8fdca4ae3d42d1b8e817ab83 /perl.h
parent86989e5ddfebcf92232ac079b053bdae48a24c3d (diff)
downloadperl-ce333219556f6d529f7e259feeb5cc99020a19a7.tar.gz
Create a per-interpeter debug scratchpad container
and use that for the regexec debugging. p4raw-id: //depot/perl@13110
Diffstat (limited to 'perl.h')
-rw-r--r--perl.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/perl.h b/perl.h
index e816534fd5..e0250aec41 100644
--- a/perl.h
+++ b/perl.h
@@ -3106,6 +3106,18 @@ enum { /* pass one of these to get_vtbl */
#define RsPARA(sv) (SvPOK(sv) && ! SvCUR(sv))
#define RsRECORD(sv) (SvROK(sv) && (SvIV(SvRV(sv)) > 0))
+#ifdef DEBUGGING
+/* A struct for keeping various DEBUGGING related stuff
+ * neatly packed. Currently only scratch variables for
+ * constructing debug output are included. */
+struct perl_debug_pad {
+ SV pad[3];
+};
+
+#define PERL_DEBUG_PAD(i) &(PL_debug_pad.pad[i])
+#define PERL_DEBUG_PAD_ZERO(i) (sv_setpvn(PERL_DEBUG_PAD(i), "", 0), PERL_DEBUG_PAD(i))
+#endif
+
/* Enable variables which are pointers to functions */
typedef void (CPERLscope(*peep_t))(pTHX_ OP* o);
typedef regexp*(CPERLscope(*regcomp_t)) (pTHX_ char* exp, char* xend, PMOP* pm);