Fw: CPAN Upload: S/SA/SAPER/Sys-Syslog-0.15.tar.gz
[p5sagit/p5-mst-13.2.git] / cop.h
diff --git a/cop.h b/cop.h
index b1273ac..83f1f04 100644 (file)
--- a/cop.h
+++ b/cop.h
@@ -143,14 +143,14 @@ struct cop {
     HV *       cop_stash;      /* package line was compiled in */
     GV *       cop_filegv;     /* file the following line # is from */
 #endif
+    U32                cop_hints;      /* hints bits from pragmata */
     U32                cop_seq;        /* parse sequence number */
     line_t      cop_line;       /* line # of this command */
     /* Beware. mg.c and warnings.pl assume the type of this is STRLEN *:  */
     STRLEN *   cop_warnings;   /* lexical warnings bitmask */
-    SV *       cop_io;         /* lexical IO defaults */
     /* compile time state of %^H.  See the comment in op.c for how this is
        used to recreate a hash to return from caller.  */
-    struct refcounted_he * cop_hints;
+    struct refcounted_he * cop_hints_hash;
 };
 
 #ifdef USE_ITHREADS
@@ -235,26 +235,25 @@ struct cop {
    using $[ is highly discouraged, no sane Perl code will be using it.  */
 #define CopARYBASE_get(c)      \
        ((CopHINTS_get(c) & HINT_ARYBASE)                               \
-        ? SvIV(Perl_refcounted_he_fetch(aTHX_ (c)->cop_hints, 0, "$[", 2, 0, \
-                                        0))                            \
+        ? SvIV(Perl_refcounted_he_fetch(aTHX_ (c)->cop_hints_hash, 0,  \
+                                        "$[", 2, 0, 0))                \
         : 0)
 #define CopARYBASE_set(c, b) STMT_START { \
-       if (b || ((c)->op_private & HINT_ARYBASE)) {                    \
-           (c)->op_private |= HINT_ARYBASE;                            \
+       if (b || ((c)->cop_hints & HINT_ARYBASE)) {                     \
+           (c)->cop_hints |= HINT_ARYBASE;                             \
            if ((c) == &PL_compiling)                                   \
                PL_hints |= HINT_LOCALIZE_HH | HINT_ARYBASE;            \
-           (c)->cop_hints                                              \
-              = Perl_refcounted_he_new(aTHX_ (c)->cop_hints,           \
+           (c)->cop_hints_hash                                         \
+              = Perl_refcounted_he_new(aTHX_ (c)->cop_hints_hash,      \
                                        sv_2mortal(newSVpvs("$[")),     \
                                        sv_2mortal(newSViv(b)));        \
        }                                                               \
     } STMT_END
 
 /* FIXME NATIVE_HINTS if this is changed from op_private (see perl.h)  */
-#define CopHINTS_get(c)                ((c)->op_private + 0)
+#define CopHINTS_get(c)                ((c)->cop_hints + 0)
 #define CopHINTS_set(c, h)     STMT_START {                            \
-                                   (c)->op_private                     \
-                                        = (U8)((h) & HINT_PRIVATE_MASK); \
+                                   (c)->cop_hints = (h);               \
                                } STMT_END
 
 /*
@@ -331,7 +330,7 @@ struct block_sub {
            POP_SAVEARRAY();                                            \
            /* abandon @_ if it got reified */                          \
            if (AvREAL(cx->blk_sub.argarray)) {                         \
-               SSize_t fill = AvFILLp(cx->blk_sub.argarray);           \
+               const SSize_t fill = AvFILLp(cx->blk_sub.argarray);     \
                SvREFCNT_dec(cx->blk_sub.argarray);                     \
                cx->blk_sub.argarray = newAV();                         \
                av_extend(cx->blk_sub.argarray, fill);                  \