Convert ByteLoader to use CopARYBASE_set().
Nicholas Clark [Sun, 2 Apr 2006 10:41:30 +0000 (10:41 +0000)]
p4raw-id: //depot/perl@27674

bytecode.pl
ext/ByteLoader/bytecode.h
ext/ByteLoader/byterun.c

index fc2cae4..11e148c 100644 (file)
@@ -493,7 +493,7 @@ cop_stash   cCOP                                    svindex         x
 cop_filegv     cCOP                                    svindex         x
 #endif
 cop_seq                cCOP->cop_seq                           U32
-cop_arybase    cCOP->cop_arybase                       I32
+cop_arybase    cCOP                                    I32             x
 cop_line       cCOP->cop_line                          line_t
 cop_io         cCOP->cop_io                            svindex
 cop_warnings   cCOP->cop_warnings                      svindex
index 7a6b485..13f8510 100644 (file)
@@ -348,6 +348,7 @@ typedef char *pvindex;
                name, strlen(name), cv, 0))
 
 #define BSET_xhv_name(hv, name)        hv_name_set((HV*)hv, name, strlen(name), 0)
+#define BSET_cop_arybase(c, b) CopARYBASE_set(c, b)
 
 /* NOTE: the bytecode header only sanity-checks the bytecode. If a script cares about
  * what version of Perl it's being called under, it should do a 'use 5.006_001' or
index 7c62351..8c82798 100644 (file)
@@ -964,7 +964,7 @@ byterun(pTHX_ register struct byteloader_state *bstate)
            {
                I32 arg;
                BGET_I32(arg);
-               cCOP->cop_arybase = arg;
+               BSET_cop_arybase(cCOP, arg);
                break;
            }
          case INSN_COP_LINE:           /* 129 */