Shrink the interpreter structure by 4 bytes (usually) by making
Nicholas Clark [Sat, 16 Sep 2006 17:59:17 +0000 (17:59 +0000)]
PL_in_eval a U8 and PL_delaymagic a U16. (And corresponding changes
in struct block_eval in cop.h to avoid any possible compiler warnings)

p4raw-id: //depot/perl@28855

cop.h
thrdvar.h

diff --git a/cop.h b/cop.h
index 5bc36bd..a630b64 100644 (file)
--- a/cop.h
+++ b/cop.h
@@ -358,8 +358,8 @@ struct block_sub {
 
 /* eval context */
 struct block_eval {
-    I32                old_in_eval;
-    I32                old_op_type;
+    U8         old_in_eval;
+    U16                old_op_type;
     SV *       old_namesv;
     OP *       old_eval_root;
     SV *       cur_text;
index 1b68a87..581d60f 100644 (file)
--- a/thrdvar.h
+++ b/thrdvar.h
@@ -118,8 +118,8 @@ PERLVAR(Tcurstash,  HV *)           /* symbol table for current package */
 
 PERLVAR(Trestartop,    OP *)           /* propagating an error from croak? */
 PERLVARI(Tcurcop,      COP * VOL,      &PL_compiling)
-PERLVAR(Tin_eval,      VOL int)        /* trap "fatal" errors? */
-PERLVAR(Tdelaymagic,   int)            /* ($<,$>) = ... */
+PERLVAR(Tin_eval,      VOL U8) /* trap "fatal" errors? */
+PERLVAR(Tdelaymagic,   U16)            /* ($<,$>) = ... */
 PERLVARI(Tdirty,       bool, FALSE)    /* in the middle of tearing things down? */
 PERLVAR(Tlocalizing,   int)            /* are we processing a local() list? */