Reassign op_private flags of OP_ENTERSUB such that bits 32 and 64 can be used by...
authorGerard Goossen <gerard@ggoossen.net>
Wed, 31 Aug 2011 13:30:00 +0000 (15:30 +0200)
committerFather Chrysostomos <sprout@cpan.org>
Thu, 1 Sep 2011 19:45:10 +0000 (12:45 -0700)
ext/B/B/Concise.pm
op.h

index 45e7ba9..0551667 100644 (file)
@@ -613,7 +613,7 @@ $priv{$_}{4} = "DREFed" for (qw(rv2sv rv2av rv2hv));
   for (qw(rv2gv rv2sv padsv aelem helem));
 $priv{$_}{16} = "STATE" for ("padav", "padhv", "padsv");
 $priv{rv2gv}{4} = "NOINIT";
-@{$priv{"entersub"}}{1,4,16,32,64} = qw( DREF INARGS DBG TARG );
+@{$priv{"entersub"}}{1,4,16,32,64} = qw( INARGS TARG DBG DEREF );
 @{$priv{rv2cv}}{1,8,128} = ("CONST","AMPER","NO()");
 $priv{"gv"}{32} = "EARLYCV";
 $priv{"aelem"}{16} = $priv{"helem"}{16} = "LVDEFER";
diff --git a/op.h b/op.h
index f23ff2d..70b6358 100644 (file)
--- a/op.h
+++ b/op.h
@@ -204,9 +204,9 @@ Deprecated.  Use C<GIMME_V> instead.
 
   /* OP_ENTERSUB only */
 #define OPpENTERSUB_DB         16      /* Debug subroutine. */
-#define OPpENTERSUB_HASTARG    32      /* Called from OP tree. */
-#define OPpENTERSUB_INARGS     4       /* Lval used as arg to a sub. */
-#define OPpENTERSUB_DEREF            /* Lval call that autovivifies. */
+#define OPpENTERSUB_HASTARG          /* Called from OP tree. */
+#define OPpENTERSUB_INARGS     1       /* Lval used as arg to a sub. */
+#define OPpENTERSUB_DEREF      32      /* Lval call that autovivifies. */
 /* used by HINT_STRICT_SUBS     2          */
   /* Mask for OP_ENTERSUB flags, the absence of which must be propagated
      in dynamic context */