summaryrefslogtreecommitdiff
path: root/op.h
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2007-04-07 12:15:40 +0000
committerNicholas Clark <nick@ccl4.org>2007-04-07 12:15:40 +0000
commit20e98b0f9ccd1237d697ca82b2dc40058ff7f30b (patch)
tree807971e3b2e0b89a03097e244207533567c0728d /op.h
parenta6aa0b75b0eb9c04ef2df088983c48258eaa6f4f (diff)
downloadperl-20e98b0f9ccd1237d697ca82b2dc40058ff7f30b.tar.gz
Turn op_pmreplroot in struct pmop into a real union.
p4raw-id: //depot/perl@30865
Diffstat (limited to 'op.h')
-rw-r--r--op.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/op.h b/op.h
index 31bce2f91f..2141e2b496 100644
--- a/op.h
+++ b/op.h
@@ -318,7 +318,6 @@ struct pmop {
BASEOP
OP * op_first;
OP * op_last;
- OP * op_pmreplroot; /* (type is really union {OP*,GV*,PADOFFSET}) */
#ifdef USE_ITHREADS
IV op_pmoffset;
#else
@@ -326,6 +325,14 @@ struct pmop {
#endif
U32 op_pmflags;
union {
+ OP * op_pmreplroot; /* For OP_SUBST */
+#ifdef USE_ITHREADS
+ PADOFFSET op_pmtargetoff; /* For OP_PUSHRE */
+#else
+ GV * op_pmtargetgv;
+#endif
+ } op_pmreplrootu;
+ union {
OP * op_pmreplstart; /* Only used in OP_SUBST */
#ifdef USE_ITHREADS
char * op_pmstashpv; /* Only used in OP_MATCH, with PMf_ONCE set */