This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Upgrade to Math::BigRat 0.11
[perl5.git] / opcode.h
index b77c0a8..5125598 100644 (file)
--- a/opcode.h
+++ b/opcode.h
@@ -1,7 +1,8 @@
 /*
  *    opcode.h
  *
- *    Copyright (c) 1997-2002, Larry Wall
+ *    Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+ *    2000, 2001, 2002, 2003, by Larry Wall and others
  *
  *    You may distribute under the terms of either the GNU General Public
  *    License or the Artistic License, as specified in the README file.
 START_EXTERN_C
 
 
-#define OP_NAME(o) (o->op_type == OP_CUSTOM ? custom_op_name(o) : \
-                    PL_op_name[o->op_type])
-#define OP_DESC(o) (o->op_type == OP_CUSTOM ? custom_op_desc(o) : \
-                    PL_op_desc[o->op_type])
+#define OP_NAME(o) ((o)->op_type == OP_CUSTOM ? custom_op_name(o) : \
+                    PL_op_name[(o)->op_type])
+#define OP_DESC(o) ((o)->op_type == OP_CUSTOM ? custom_op_desc(o) : \
+                    PL_op_desc[(o)->op_type])
 
 #ifndef DOINIT
 EXT char *PL_op_name[];
@@ -1253,7 +1254,7 @@ EXT OP * (CPERLscope(*PL_check)[]) (pTHX_ OP *op) = {
        MEMBER_TO_FPTR(Perl_ck_rvconst),        /* rv2hv */
        MEMBER_TO_FPTR(Perl_ck_null),   /* helem */
        MEMBER_TO_FPTR(Perl_ck_null),   /* hslice */
-       MEMBER_TO_FPTR(Perl_ck_fun),    /* unpack */
+       MEMBER_TO_FPTR(Perl_ck_unpack), /* unpack */
        MEMBER_TO_FPTR(Perl_ck_fun),    /* pack */
        MEMBER_TO_FPTR(Perl_ck_split),  /* split */
        MEMBER_TO_FPTR(Perl_ck_join),   /* join */
@@ -1614,7 +1615,7 @@ EXT U32 PL_opargs[] = {
        0x00000248,     /* rv2hv */
        0x00028404,     /* helem */
        0x00048801,     /* hslice */
-       0x00022800,     /* unpack */
+       0x00122800,     /* unpack */
        0x0004280d,     /* pack */
        0x00222808,     /* split */
        0x0004280d,     /* join */
@@ -1624,8 +1625,8 @@ EXT U32 PL_opargs[] = {
        0x00004805,     /* anonhash */
        0x05326801,     /* splice */
        0x0004691d,     /* push */
-       0x00007604,     /* pop */
-       0x00007604,     /* shift */
+       0x00017604,     /* pop */
+       0x00017604,     /* shift */
        0x0004691d,     /* unshift */
        0x0005a801,     /* sort */
        0x00004809,     /* reverse */