X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=opcode.h;h=356145f5404faf4cd9d53e570aeefeeaf6f0af88;hb=f1c8c9362c4d1029d2c52ffe1e972f0f0b3d5771;hp=62bf30dd15e4205ac5c6cd9def0e92af7241bc55;hpb=13dcffc60adeca175c32a1ea11ec8756d4853ad2;p=p5sagit%2Fp5-mst-13.2.git diff --git a/opcode.h b/opcode.h index 62bf30d..356145f 100644 --- 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, 2004, 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. @@ -20,10 +21,10 @@ 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[]; @@ -1149,9 +1150,9 @@ EXT OP * (CPERLscope(*PL_check)[]) (pTHX_ OP *op) = { MEMBER_TO_FPTR(Perl_ck_null), /* regcomp */ MEMBER_TO_FPTR(Perl_ck_match), /* match */ MEMBER_TO_FPTR(Perl_ck_match), /* qr */ - MEMBER_TO_FPTR(Perl_ck_null), /* subst */ + MEMBER_TO_FPTR(Perl_ck_match), /* subst */ MEMBER_TO_FPTR(Perl_ck_null), /* substcont */ - MEMBER_TO_FPTR(Perl_ck_null), /* trans */ + MEMBER_TO_FPTR(Perl_ck_match), /* trans */ MEMBER_TO_FPTR(Perl_ck_sassign), /* sassign */ MEMBER_TO_FPTR(Perl_ck_null), /* aassign */ MEMBER_TO_FPTR(Perl_ck_spair), /* chop */ @@ -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 */ @@ -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 */