summaryrefslogtreecommitdiff
path: root/scope.h
diff options
context:
space:
mode:
authorDave Bailey <unknown>2006-10-17 02:37:28 -0700
committerRafael Garcia-Suarez <rgarciasuarez@gmail.com>2006-10-18 08:24:30 +0000
commitea8d6ae1f062ab3b10e0ad05f17970dead9860ff (patch)
tree28b0a07ff39693b9fa7e2155d79717dc5f3e6c3d /scope.h
parentb13fd70a68ddf5966a8175e04009af31c9841332 (diff)
downloadperl-ea8d6ae1f062ab3b10e0ad05f17970dead9860ff.tar.gz
[perl #40557] regexec.c saves context stack position improperly
From: Dave Bailey (via RT) <perlbug-followup@perl.org> Message-ID: <rt-3.5.HEAD-4979-1161103047-337.40557-75-0@perl.org> p4raw-id: //depot/perl@29033
Diffstat (limited to 'scope.h')
-rw-r--r--scope.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/scope.h b/scope.h
index 9943a05876..377a8b42fe 100644
--- a/scope.h
+++ b/scope.h
@@ -52,6 +52,7 @@
#define SAVEt_COP_ARYBASE 41
#define SAVEt_RE_STATE 42
#define SAVEt_COMPILE_WARNINGS 43
+#define SAVEt_STACK_CXPOS 44
#ifndef SCOPE_SAVES_SIGNAL_MASK
#define SCOPE_SAVES_SIGNAL_MASK 0
@@ -205,6 +206,14 @@ Closing bracket on a callback. See C<ENTER> and L<perlcall>.
SSPUSHINT(SAVEt_COMPILE_WARNINGS); \
} STMT_END
+#define SAVESTACK_CXPOS() \
+ STMT_START { \
+ SSCHECK(3); \
+ SSPUSHINT(cxstack[cxstack_ix].blk_oldsp); \
+ SSPUSHINT(cxstack_ix); \
+ SSPUSHINT(SAVEt_STACK_CXPOS); \
+ } STMT_END
+
#ifdef USE_ITHREADS
# define SAVECOPSTASH(c) SAVEPPTR(CopSTASHPV(c))
# define SAVECOPSTASH_FREE(c) SAVESHAREDPV(CopSTASHPV(c))