diff options
author | Nicholas Clark <nick@ccl4.org> | 2006-02-20 13:42:47 +0000 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2006-02-20 13:42:47 +0000 |
commit | d04ba5897acce6425e3b231fbf36336ea42f8165 (patch) | |
tree | 0300fa64efa15fc65f2c48cc2938c1fe8afa0e5a /sv.h | |
parent | bf53b3a5f249ae2a059ca8014f7a62d301c554bc (diff) | |
download | perl-d04ba5897acce6425e3b231fbf36336ea42f8165.tar.gz |
xcv_root and xcv_xsub can also be merged into a union, providing a new
flag is added to denote whether the PVCV is perl or XSUB.
p4raw-id: //depot/perl@27244
Diffstat (limited to 'sv.h')
-rw-r--r-- | sv.h | 18 |
1 files changed, 12 insertions, 6 deletions
@@ -434,8 +434,10 @@ struct xpvfm { OP * xcv_start; ANY xcv_xsubany; } xcv_start_u; - OP * xcv_root; - void (*xcv_xsub)(pTHX_ CV*); + union { + OP * xcv_root; + void (*xcv_xsub) (pTHX_ CV*); + } xcv_root_u; GV * xcv_gv; char * xcv_file; long xcv_depth; /* >= 2 indicates recursive call */ @@ -460,10 +462,14 @@ typedef struct { HV* xmg_stash; /* class package */ HV * xcv_stash; - OP * xcv_start; - OP * xcv_root; - void (*xcv_xsub)(pTHX_ CV*); - ANY xcv_xsubany; + union { + OP * xcv_start; + ANY xcv_xsubany; + } xcv_start_u; + union { + OP * xcv_root; + void (*xcv_xsub) (pTHX_ CV*); + } xcv_root_u; GV * xcv_gv; char * xcv_file; long xcv_depth; /* >= 2 indicates recursive call */ |