summaryrefslogtreecommitdiff
path: root/cop.h
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2008-01-21 15:14:35 +0000
committerNicholas Clark <nick@ccl4.org>2008-01-21 15:14:35 +0000
commit85a646323d457a108a69d6fa2e42cbaca4201c8b (patch)
tree5931b7438eb5a3c105a4703d459f7c00ffc15fd0 /cop.h
parent446d078759cf8bd763552042afcb558a8a8a9513 (diff)
downloadperl-85a646323d457a108a69d6fa2e42cbaca4201c8b.tar.gz
In struct block_eval, access the members old_in_eval and old_op_type
via macros CxOLD_IN_EVAL() and CxOLD_OP_TYPE(), which will allow the storage location to be changed. p4raw-id: //depot/perl@33029
Diffstat (limited to 'cop.h')
-rw-r--r--cop.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/cop.h b/cop.h
index fafa44158c..adfc51f4ea 100644
--- a/cop.h
+++ b/cop.h
@@ -402,6 +402,9 @@ struct block_eval {
JMPENV * cur_top_env; /* value of PL_top_env when eval CX created */
};
+#define CxOLD_IN_EVAL(cx) (0 + (cx)->blk_eval.old_in_eval)
+#define CxOLD_OP_TYPE(cx) (0 + (cx)->blk_eval.old_op_type)
+
#define PUSHEVAL(cx,n,fgv) \
STMT_START { \
cx->blk_eval.old_in_eval = PL_in_eval; \
@@ -416,8 +419,8 @@ struct block_eval {
#define POPEVAL(cx) \
STMT_START { \
- PL_in_eval = cx->blk_eval.old_in_eval; \
- optype = cx->blk_eval.old_op_type; \
+ PL_in_eval = CxOLD_IN_EVAL(cx); \
+ optype = CxOLD_OP_TYPE(cx); \
PL_eval_root = cx->blk_eval.old_eval_root; \
if (cx->blk_eval.old_namesv) \
sv_2mortal(cx->blk_eval.old_namesv); \