-/*
+/* -*- buffer-read-only: t -*-
+ *
* opcode.h
*
- * Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- * 2000, 2001, 2002, 2003, by Larry Wall and others
+ * Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
+ * 2002, 2003, 2004, 2005, 2006, 2007 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.
*
* !!!!!!! DO NOT EDIT THIS FILE !!!!!!!
- * This file is built by opcode.pl from its data. Any changes made here
- * will be lost!
+ * This file is built by regen/opcode.pl from its data.
+ * Any changes made here will be lost!
*/
+#ifndef PERL_GLOBAL_STRUCT_INIT
+
+#define Perl_pp_scalar Perl_pp_null
+#define Perl_pp_padany Perl_unimplemented_op
+#define Perl_pp_regcmaybe Perl_pp_null
+#define Perl_pp_transr Perl_pp_trans
+#define Perl_pp_chomp Perl_pp_chop
+#define Perl_pp_schomp Perl_pp_schop
#define Perl_pp_i_preinc Perl_pp_preinc
#define Perl_pp_i_predec Perl_pp_predec
#define Perl_pp_i_postinc Perl_pp_postinc
#define Perl_pp_i_postdec Perl_pp_postdec
-
-
+#define Perl_pp_slt Perl_pp_sle
+#define Perl_pp_sgt Perl_pp_sle
+#define Perl_pp_sge Perl_pp_sle
+#define Perl_pp_bit_xor Perl_pp_bit_or
+#define Perl_pp_nbit_xor Perl_pp_nbit_or
+#define Perl_pp_sbit_xor Perl_pp_sbit_or
+#define Perl_pp_cos Perl_pp_sin
+#define Perl_pp_exp Perl_pp_sin
+#define Perl_pp_log Perl_pp_sin
+#define Perl_pp_sqrt Perl_pp_sin
+#define Perl_pp_hex Perl_pp_oct
+#define Perl_pp_rindex Perl_pp_index
+#define Perl_pp_lcfirst Perl_pp_ucfirst
+#define Perl_pp_aelemfast_lex Perl_pp_aelemfast
+#define Perl_pp_avalues Perl_pp_akeys
+#define Perl_pp_values Perl_do_kv
+#define Perl_pp_keys Perl_do_kv
+#define Perl_pp_rv2hv Perl_pp_rv2av
+#define Perl_pp_pop Perl_pp_shift
+#define Perl_pp_mapstart Perl_pp_grepstart
+#define Perl_pp_dor Perl_pp_defined
+#define Perl_pp_andassign Perl_pp_and
+#define Perl_pp_orassign Perl_pp_or
+#define Perl_pp_dorassign Perl_pp_defined
+#define Perl_pp_lineseq Perl_pp_null
+#define Perl_pp_scope Perl_pp_null
+#define Perl_pp_dump Perl_pp_goto
+#define Perl_pp_dbmclose Perl_pp_untie
+#define Perl_pp_read Perl_pp_sysread
+#define Perl_pp_say Perl_pp_print
+#define Perl_pp_seek Perl_pp_sysseek
+#define Perl_pp_fcntl Perl_pp_ioctl
+#ifdef HAS_SOCKET
+#define Perl_pp_send Perl_pp_syswrite
+#define Perl_pp_recv Perl_pp_sysread
+#else
+#define Perl_pp_send Perl_unimplemented_op
+#define Perl_pp_recv Perl_unimplemented_op
+#define Perl_pp_socket Perl_unimplemented_op
+#endif
+#ifdef HAS_SOCKET
+#define Perl_pp_connect Perl_pp_bind
+#define Perl_pp_gsockopt Perl_pp_ssockopt
+#define Perl_pp_getsockname Perl_pp_getpeername
+#else
+#define Perl_pp_bind Perl_unimplemented_op
+#define Perl_pp_connect Perl_unimplemented_op
+#define Perl_pp_listen Perl_unimplemented_op
+#define Perl_pp_accept Perl_unimplemented_op
+#define Perl_pp_shutdown Perl_unimplemented_op
+#define Perl_pp_gsockopt Perl_unimplemented_op
+#define Perl_pp_ssockopt Perl_unimplemented_op
+#define Perl_pp_getsockname Perl_unimplemented_op
+#define Perl_pp_getpeername Perl_unimplemented_op
+#endif
+#define Perl_pp_lstat Perl_pp_stat
+#define Perl_pp_ftrwrite Perl_pp_ftrread
+#define Perl_pp_ftrexec Perl_pp_ftrread
+#define Perl_pp_fteread Perl_pp_ftrread
+#define Perl_pp_ftewrite Perl_pp_ftrread
+#define Perl_pp_fteexec Perl_pp_ftrread
+#define Perl_pp_ftsize Perl_pp_ftis
+#define Perl_pp_ftmtime Perl_pp_ftis
+#define Perl_pp_ftatime Perl_pp_ftis
+#define Perl_pp_ftctime Perl_pp_ftis
+#define Perl_pp_fteowned Perl_pp_ftrowned
+#define Perl_pp_ftzero Perl_pp_ftrowned
+#define Perl_pp_ftsock Perl_pp_ftrowned
+#define Perl_pp_ftchr Perl_pp_ftrowned
+#define Perl_pp_ftblk Perl_pp_ftrowned
+#define Perl_pp_ftfile Perl_pp_ftrowned
+#define Perl_pp_ftdir Perl_pp_ftrowned
+#define Perl_pp_ftpipe Perl_pp_ftrowned
+#define Perl_pp_ftsuid Perl_pp_ftrowned
+#define Perl_pp_ftsgid Perl_pp_ftrowned
+#define Perl_pp_ftsvtx Perl_pp_ftrowned
+#define Perl_pp_ftbinary Perl_pp_fttext
+#define Perl_pp_unlink Perl_pp_chown
+#define Perl_pp_chmod Perl_pp_chown
+#define Perl_pp_utime Perl_pp_chown
+#define Perl_pp_symlink Perl_pp_link
+#define Perl_pp_kill Perl_pp_chown
+#define Perl_pp_localtime Perl_pp_gmtime
+#define Perl_pp_shmget Perl_pp_semget
+#define Perl_pp_shmctl Perl_pp_semctl
+#define Perl_pp_shmread Perl_pp_shmwrite
+#define Perl_pp_msgget Perl_pp_semget
+#define Perl_pp_msgctl Perl_pp_semctl
+#define Perl_pp_msgsnd Perl_pp_shmwrite
+#define Perl_pp_msgrcv Perl_pp_shmwrite
+#define Perl_pp_semop Perl_pp_shmwrite
+#define Perl_pp_dofile Perl_pp_require
+#define Perl_pp_ghbyname Perl_pp_ghostent
+#define Perl_pp_ghbyaddr Perl_pp_ghostent
+#define Perl_pp_gnbyname Perl_pp_gnetent
+#define Perl_pp_gnbyaddr Perl_pp_gnetent
+#define Perl_pp_gpbyname Perl_pp_gprotoent
+#define Perl_pp_gpbynumber Perl_pp_gprotoent
+#define Perl_pp_gsbyname Perl_pp_gservent
+#define Perl_pp_gsbyport Perl_pp_gservent
+#define Perl_pp_snetent Perl_pp_shostent
+#define Perl_pp_sprotoent Perl_pp_shostent
+#define Perl_pp_sservent Perl_pp_shostent
+#define Perl_pp_enetent Perl_pp_ehostent
+#define Perl_pp_eprotoent Perl_pp_ehostent
+#define Perl_pp_eservent Perl_pp_ehostent
+#define Perl_pp_gpwnam Perl_pp_gpwent
+#define Perl_pp_gpwuid Perl_pp_gpwent
+#define Perl_pp_spwent Perl_pp_ehostent
+#define Perl_pp_epwent Perl_pp_ehostent
+#define Perl_pp_ggrnam Perl_pp_ggrent
+#define Perl_pp_ggrgid Perl_pp_ggrent
+#define Perl_pp_sgrent Perl_pp_ehostent
+#define Perl_pp_egrent Perl_pp_ehostent
+#define Perl_pp_custom Perl_unimplemented_op
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])
-
#ifndef DOINIT
-EXT char *PL_op_name[];
+EXTCONST char* const PL_op_name[];
#else
-EXT char *PL_op_name[] = {
+EXTCONST char* const PL_op_name[] = {
"null",
"stub",
"scalar",
"subst",
"substcont",
"trans",
+ "transr",
"sassign",
"aassign",
"chop",
"bit_and",
"bit_xor",
"bit_or",
+ "nbit_and",
+ "nbit_xor",
+ "nbit_or",
+ "sbit_and",
+ "sbit_xor",
+ "sbit_or",
"negate",
"i_negate",
"not",
"complement",
+ "ncomplement",
+ "scomplement",
+ "smartmatch",
"atan2",
"sin",
"cos",
"quotemeta",
"rv2av",
"aelemfast",
+ "aelemfast_lex",
"aelem",
"aslice",
+ "kvaslice",
+ "aeach",
+ "akeys",
+ "avalues",
"each",
"values",
"keys",
"rv2hv",
"helem",
"hslice",
+ "kvhslice",
+ "multideref",
"unpack",
"pack",
"split",
"and",
"or",
"xor",
+ "dor",
"cond_expr",
"andassign",
"orassign",
+ "dorassign",
"method",
"entersub",
"leavesub",
"dump",
"goto",
"exit",
+ "method_named",
+ "method_super",
+ "method_redir",
+ "method_redir_super",
+ "entergiven",
+ "leavegiven",
+ "enterwhen",
+ "leavewhen",
+ "break",
+ "continue",
"open",
"close",
"pipe_op",
"leavewrite",
"prtf",
"print",
+ "say",
"sysopen",
"sysseek",
"sysread",
"syswrite",
- "send",
- "recv",
"eof",
"tell",
"seek",
"fcntl",
"ioctl",
"flock",
+ "send",
+ "recv",
"socket",
"sockpair",
"bind",
"ftewrite",
"fteexec",
"ftis",
- "fteowned",
- "ftrowned",
- "ftzero",
"ftsize",
"ftmtime",
"ftatime",
"ftctime",
+ "ftrowned",
+ "fteowned",
+ "ftzero",
"ftsock",
"ftchr",
"ftblk",
"ftfile",
"ftdir",
"ftpipe",
- "ftlink",
"ftsuid",
"ftsgid",
"ftsvtx",
+ "ftlink",
"fttty",
"fttext",
"ftbinary",
"msgctl",
"msgsnd",
"msgrcv",
+ "semop",
"semget",
"semctl",
- "semop",
"require",
"dofile",
+ "hintseval",
"entereval",
"leaveeval",
"entertry",
"getlogin",
"syscall",
"lock",
- "threadsv",
- "setstate",
- "method_named",
- "dor",
- "dorassign",
+ "once",
"custom",
+ "coreargs",
+ "runcv",
+ "fc",
+ "padcv",
+ "introcv",
+ "clonecv",
+ "padrange",
+ "refassign",
+ "lvref",
+ "lvrefslice",
+ "lvavref",
+ "anonconst",
+ "freed",
};
#endif
#ifndef DOINIT
-EXT char *PL_op_desc[];
+EXTCONST char* const PL_op_desc[];
#else
-EXT char *PL_op_desc[] = {
+EXTCONST char* const PL_op_desc[] = {
"null operation",
"stub",
"scalar",
"substitution (s///)",
"substitution iterator",
"transliteration (tr///)",
+ "transliteration (tr///)",
"scalar assignment",
"list assignment",
"chop",
"bitwise and (&)",
"bitwise xor (^)",
"bitwise or (|)",
+ "numeric bitiwse and (&)",
+ "numeric bitwise xor (^)",
+ "numeric bitwise or (|)",
+ "string bitiwse and (&)",
+ "string bitwise xor (^)",
+ "string bitwise or (|)",
"negation (-)",
"integer negation (-)",
"not",
"1's complement (~)",
+ "numeric 1's complement (~)",
+ "string 1's complement (~)",
+ "smart match",
"atan2",
"sin",
"cos",
"quotemeta",
"array dereference",
"constant array element",
+ "constant lexical array element",
"array element",
"array slice",
+ "index/value array slice",
+ "each on array",
+ "keys on array",
+ "values on array",
"each",
"values",
"keys",
"hash dereference",
"hash element",
"hash slice",
+ "key/value hash slice",
+ "array or hash lookup",
"unpack",
"pack",
"split",
"join or string",
"list",
"list slice",
- "anonymous list ([])",
+ "anonymous array ([])",
"anonymous hash ({})",
"splice",
"push",
"logical and (&&)",
"logical or (||)",
"logical xor",
+ "defined or (//)",
"conditional expression",
"logical and assignment (&&=)",
"logical or assignment (||=)",
+ "defined or assignment (//=)",
"method lookup",
"subroutine entry",
"subroutine exit",
"dump",
"goto",
"exit",
+ "method with known name",
+ "super with known name",
+ "redirect method with known name",
+ "redirect super method with known name",
+ "given()",
+ "leave given block",
+ "when()",
+ "leave when block",
+ "break",
+ "continue",
"open",
"close",
"pipe",
"write exit",
"printf",
"print",
+ "say",
"sysopen",
"sysseek",
"sysread",
"syswrite",
- "send",
- "recv",
"eof",
"tell",
"seek",
"fcntl",
"ioctl",
"flock",
+ "send",
+ "recv",
"socket",
"socketpair",
"bind",
"-w",
"-x",
"-e",
- "-O",
- "-o",
- "-z",
"-s",
"-M",
"-A",
"-C",
+ "-O",
+ "-o",
+ "-z",
"-S",
"-c",
"-b",
"-f",
"-d",
"-p",
- "-l",
"-u",
"-g",
"-k",
+ "-l",
"-t",
"-T",
"-B",
"msgctl",
"msgsnd",
"msgrcv",
+ "semop",
"semget",
"semctl",
- "semop",
"require",
"do \"file\"",
+ "eval hints",
"eval \"string\"",
"eval \"string\" exit",
"eval {block}",
"getlogin",
"syscall",
"lock",
- "per-thread value",
- "set statement info",
- "method with known name",
- "defined or (//)",
- "defined or assignment (//=)",
+ "once",
"unknown custom operator",
+ "CORE:: subroutine",
+ "__SUB__",
+ "fc",
+ "private subroutine",
+ "private subroutine",
+ "private subroutine",
+ "list of private variables",
+ "lvalue ref assignment",
+ "lvalue ref assignment",
+ "lvalue ref assignment",
+ "lvalue array reference",
+ "anonymous constant",
+ "freed op",
};
#endif
END_EXTERN_C
+#endif /* !PERL_GLOBAL_STRUCT_INIT */
START_EXTERN_C
-#ifndef DOINIT
-EXT OP * (CPERLscope(*PL_ppaddr)[])(pTHX);
+#ifdef PERL_GLOBAL_STRUCT_INIT
+# define PERL_PPADDR_INITED
+static const Perl_ppaddr_t Gppaddr[]
#else
-EXT OP * (CPERLscope(*PL_ppaddr)[])(pTHX) = {
- MEMBER_TO_FPTR(Perl_pp_null),
- MEMBER_TO_FPTR(Perl_pp_stub),
- MEMBER_TO_FPTR(Perl_pp_scalar),
- MEMBER_TO_FPTR(Perl_pp_pushmark),
- MEMBER_TO_FPTR(Perl_pp_wantarray),
- MEMBER_TO_FPTR(Perl_pp_const),
- MEMBER_TO_FPTR(Perl_pp_gvsv),
- MEMBER_TO_FPTR(Perl_pp_gv),
- MEMBER_TO_FPTR(Perl_pp_gelem),
- MEMBER_TO_FPTR(Perl_pp_padsv),
- MEMBER_TO_FPTR(Perl_pp_padav),
- MEMBER_TO_FPTR(Perl_pp_padhv),
- MEMBER_TO_FPTR(Perl_pp_padany),
- MEMBER_TO_FPTR(Perl_pp_pushre),
- MEMBER_TO_FPTR(Perl_pp_rv2gv),
- MEMBER_TO_FPTR(Perl_pp_rv2sv),
- MEMBER_TO_FPTR(Perl_pp_av2arylen),
- MEMBER_TO_FPTR(Perl_pp_rv2cv),
- MEMBER_TO_FPTR(Perl_pp_anoncode),
- MEMBER_TO_FPTR(Perl_pp_prototype),
- MEMBER_TO_FPTR(Perl_pp_refgen),
- MEMBER_TO_FPTR(Perl_pp_srefgen),
- MEMBER_TO_FPTR(Perl_pp_ref),
- MEMBER_TO_FPTR(Perl_pp_bless),
- MEMBER_TO_FPTR(Perl_pp_backtick),
- MEMBER_TO_FPTR(Perl_pp_glob),
- MEMBER_TO_FPTR(Perl_pp_readline),
- MEMBER_TO_FPTR(Perl_pp_rcatline),
- MEMBER_TO_FPTR(Perl_pp_regcmaybe),
- MEMBER_TO_FPTR(Perl_pp_regcreset),
- MEMBER_TO_FPTR(Perl_pp_regcomp),
- MEMBER_TO_FPTR(Perl_pp_match),
- MEMBER_TO_FPTR(Perl_pp_qr),
- MEMBER_TO_FPTR(Perl_pp_subst),
- MEMBER_TO_FPTR(Perl_pp_substcont),
- MEMBER_TO_FPTR(Perl_pp_trans),
- MEMBER_TO_FPTR(Perl_pp_sassign),
- MEMBER_TO_FPTR(Perl_pp_aassign),
- MEMBER_TO_FPTR(Perl_pp_chop),
- MEMBER_TO_FPTR(Perl_pp_schop),
- MEMBER_TO_FPTR(Perl_pp_chomp),
- MEMBER_TO_FPTR(Perl_pp_schomp),
- MEMBER_TO_FPTR(Perl_pp_defined),
- MEMBER_TO_FPTR(Perl_pp_undef),
- MEMBER_TO_FPTR(Perl_pp_study),
- MEMBER_TO_FPTR(Perl_pp_pos),
- MEMBER_TO_FPTR(Perl_pp_preinc),
- MEMBER_TO_FPTR(Perl_pp_i_preinc),
- MEMBER_TO_FPTR(Perl_pp_predec),
- MEMBER_TO_FPTR(Perl_pp_i_predec),
- MEMBER_TO_FPTR(Perl_pp_postinc),
- MEMBER_TO_FPTR(Perl_pp_i_postinc),
- MEMBER_TO_FPTR(Perl_pp_postdec),
- MEMBER_TO_FPTR(Perl_pp_i_postdec),
- MEMBER_TO_FPTR(Perl_pp_pow),
- MEMBER_TO_FPTR(Perl_pp_multiply),
- MEMBER_TO_FPTR(Perl_pp_i_multiply),
- MEMBER_TO_FPTR(Perl_pp_divide),
- MEMBER_TO_FPTR(Perl_pp_i_divide),
- MEMBER_TO_FPTR(Perl_pp_modulo),
- MEMBER_TO_FPTR(Perl_pp_i_modulo),
- MEMBER_TO_FPTR(Perl_pp_repeat),
- MEMBER_TO_FPTR(Perl_pp_add),
- MEMBER_TO_FPTR(Perl_pp_i_add),
- MEMBER_TO_FPTR(Perl_pp_subtract),
- MEMBER_TO_FPTR(Perl_pp_i_subtract),
- MEMBER_TO_FPTR(Perl_pp_concat),
- MEMBER_TO_FPTR(Perl_pp_stringify),
- MEMBER_TO_FPTR(Perl_pp_left_shift),
- MEMBER_TO_FPTR(Perl_pp_right_shift),
- MEMBER_TO_FPTR(Perl_pp_lt),
- MEMBER_TO_FPTR(Perl_pp_i_lt),
- MEMBER_TO_FPTR(Perl_pp_gt),
- MEMBER_TO_FPTR(Perl_pp_i_gt),
- MEMBER_TO_FPTR(Perl_pp_le),
- MEMBER_TO_FPTR(Perl_pp_i_le),
- MEMBER_TO_FPTR(Perl_pp_ge),
- MEMBER_TO_FPTR(Perl_pp_i_ge),
- MEMBER_TO_FPTR(Perl_pp_eq),
- MEMBER_TO_FPTR(Perl_pp_i_eq),
- MEMBER_TO_FPTR(Perl_pp_ne),
- MEMBER_TO_FPTR(Perl_pp_i_ne),
- MEMBER_TO_FPTR(Perl_pp_ncmp),
- MEMBER_TO_FPTR(Perl_pp_i_ncmp),
- MEMBER_TO_FPTR(Perl_pp_slt),
- MEMBER_TO_FPTR(Perl_pp_sgt),
- MEMBER_TO_FPTR(Perl_pp_sle),
- MEMBER_TO_FPTR(Perl_pp_sge),
- MEMBER_TO_FPTR(Perl_pp_seq),
- MEMBER_TO_FPTR(Perl_pp_sne),
- MEMBER_TO_FPTR(Perl_pp_scmp),
- MEMBER_TO_FPTR(Perl_pp_bit_and),
- MEMBER_TO_FPTR(Perl_pp_bit_xor),
- MEMBER_TO_FPTR(Perl_pp_bit_or),
- MEMBER_TO_FPTR(Perl_pp_negate),
- MEMBER_TO_FPTR(Perl_pp_i_negate),
- MEMBER_TO_FPTR(Perl_pp_not),
- MEMBER_TO_FPTR(Perl_pp_complement),
- MEMBER_TO_FPTR(Perl_pp_atan2),
- MEMBER_TO_FPTR(Perl_pp_sin),
- MEMBER_TO_FPTR(Perl_pp_cos),
- MEMBER_TO_FPTR(Perl_pp_rand),
- MEMBER_TO_FPTR(Perl_pp_srand),
- MEMBER_TO_FPTR(Perl_pp_exp),
- MEMBER_TO_FPTR(Perl_pp_log),
- MEMBER_TO_FPTR(Perl_pp_sqrt),
- MEMBER_TO_FPTR(Perl_pp_int),
- MEMBER_TO_FPTR(Perl_pp_hex),
- MEMBER_TO_FPTR(Perl_pp_oct),
- MEMBER_TO_FPTR(Perl_pp_abs),
- MEMBER_TO_FPTR(Perl_pp_length),
- MEMBER_TO_FPTR(Perl_pp_substr),
- MEMBER_TO_FPTR(Perl_pp_vec),
- MEMBER_TO_FPTR(Perl_pp_index),
- MEMBER_TO_FPTR(Perl_pp_rindex),
- MEMBER_TO_FPTR(Perl_pp_sprintf),
- MEMBER_TO_FPTR(Perl_pp_formline),
- MEMBER_TO_FPTR(Perl_pp_ord),
- MEMBER_TO_FPTR(Perl_pp_chr),
- MEMBER_TO_FPTR(Perl_pp_crypt),
- MEMBER_TO_FPTR(Perl_pp_ucfirst),
- MEMBER_TO_FPTR(Perl_pp_lcfirst),
- MEMBER_TO_FPTR(Perl_pp_uc),
- MEMBER_TO_FPTR(Perl_pp_lc),
- MEMBER_TO_FPTR(Perl_pp_quotemeta),
- MEMBER_TO_FPTR(Perl_pp_rv2av),
- MEMBER_TO_FPTR(Perl_pp_aelemfast),
- MEMBER_TO_FPTR(Perl_pp_aelem),
- MEMBER_TO_FPTR(Perl_pp_aslice),
- MEMBER_TO_FPTR(Perl_pp_each),
- MEMBER_TO_FPTR(Perl_pp_values),
- MEMBER_TO_FPTR(Perl_pp_keys),
- MEMBER_TO_FPTR(Perl_pp_delete),
- MEMBER_TO_FPTR(Perl_pp_exists),
- MEMBER_TO_FPTR(Perl_pp_rv2hv),
- MEMBER_TO_FPTR(Perl_pp_helem),
- MEMBER_TO_FPTR(Perl_pp_hslice),
- MEMBER_TO_FPTR(Perl_pp_unpack),
- MEMBER_TO_FPTR(Perl_pp_pack),
- MEMBER_TO_FPTR(Perl_pp_split),
- MEMBER_TO_FPTR(Perl_pp_join),
- MEMBER_TO_FPTR(Perl_pp_list),
- MEMBER_TO_FPTR(Perl_pp_lslice),
- MEMBER_TO_FPTR(Perl_pp_anonlist),
- MEMBER_TO_FPTR(Perl_pp_anonhash),
- MEMBER_TO_FPTR(Perl_pp_splice),
- MEMBER_TO_FPTR(Perl_pp_push),
- MEMBER_TO_FPTR(Perl_pp_pop),
- MEMBER_TO_FPTR(Perl_pp_shift),
- MEMBER_TO_FPTR(Perl_pp_unshift),
- MEMBER_TO_FPTR(Perl_pp_sort),
- MEMBER_TO_FPTR(Perl_pp_reverse),
- MEMBER_TO_FPTR(Perl_pp_grepstart),
- MEMBER_TO_FPTR(Perl_pp_grepwhile),
- MEMBER_TO_FPTR(Perl_pp_mapstart),
- MEMBER_TO_FPTR(Perl_pp_mapwhile),
- MEMBER_TO_FPTR(Perl_pp_range),
- MEMBER_TO_FPTR(Perl_pp_flip),
- MEMBER_TO_FPTR(Perl_pp_flop),
- MEMBER_TO_FPTR(Perl_pp_and),
- MEMBER_TO_FPTR(Perl_pp_or),
- MEMBER_TO_FPTR(Perl_pp_xor),
- MEMBER_TO_FPTR(Perl_pp_cond_expr),
- MEMBER_TO_FPTR(Perl_pp_andassign),
- MEMBER_TO_FPTR(Perl_pp_orassign),
- MEMBER_TO_FPTR(Perl_pp_method),
- MEMBER_TO_FPTR(Perl_pp_entersub),
- MEMBER_TO_FPTR(Perl_pp_leavesub),
- MEMBER_TO_FPTR(Perl_pp_leavesublv),
- MEMBER_TO_FPTR(Perl_pp_caller),
- MEMBER_TO_FPTR(Perl_pp_warn),
- MEMBER_TO_FPTR(Perl_pp_die),
- MEMBER_TO_FPTR(Perl_pp_reset),
- MEMBER_TO_FPTR(Perl_pp_lineseq),
- MEMBER_TO_FPTR(Perl_pp_nextstate),
- MEMBER_TO_FPTR(Perl_pp_dbstate),
- MEMBER_TO_FPTR(Perl_pp_unstack),
- MEMBER_TO_FPTR(Perl_pp_enter),
- MEMBER_TO_FPTR(Perl_pp_leave),
- MEMBER_TO_FPTR(Perl_pp_scope),
- MEMBER_TO_FPTR(Perl_pp_enteriter),
- MEMBER_TO_FPTR(Perl_pp_iter),
- MEMBER_TO_FPTR(Perl_pp_enterloop),
- MEMBER_TO_FPTR(Perl_pp_leaveloop),
- MEMBER_TO_FPTR(Perl_pp_return),
- MEMBER_TO_FPTR(Perl_pp_last),
- MEMBER_TO_FPTR(Perl_pp_next),
- MEMBER_TO_FPTR(Perl_pp_redo),
- MEMBER_TO_FPTR(Perl_pp_dump),
- MEMBER_TO_FPTR(Perl_pp_goto),
- MEMBER_TO_FPTR(Perl_pp_exit),
- MEMBER_TO_FPTR(Perl_pp_open),
- MEMBER_TO_FPTR(Perl_pp_close),
- MEMBER_TO_FPTR(Perl_pp_pipe_op),
- MEMBER_TO_FPTR(Perl_pp_fileno),
- MEMBER_TO_FPTR(Perl_pp_umask),
- MEMBER_TO_FPTR(Perl_pp_binmode),
- MEMBER_TO_FPTR(Perl_pp_tie),
- MEMBER_TO_FPTR(Perl_pp_untie),
- MEMBER_TO_FPTR(Perl_pp_tied),
- MEMBER_TO_FPTR(Perl_pp_dbmopen),
- MEMBER_TO_FPTR(Perl_pp_dbmclose),
- MEMBER_TO_FPTR(Perl_pp_sselect),
- MEMBER_TO_FPTR(Perl_pp_select),
- MEMBER_TO_FPTR(Perl_pp_getc),
- MEMBER_TO_FPTR(Perl_pp_read),
- MEMBER_TO_FPTR(Perl_pp_enterwrite),
- MEMBER_TO_FPTR(Perl_pp_leavewrite),
- MEMBER_TO_FPTR(Perl_pp_prtf),
- MEMBER_TO_FPTR(Perl_pp_print),
- MEMBER_TO_FPTR(Perl_pp_sysopen),
- MEMBER_TO_FPTR(Perl_pp_sysseek),
- MEMBER_TO_FPTR(Perl_pp_sysread),
- MEMBER_TO_FPTR(Perl_pp_syswrite),
- MEMBER_TO_FPTR(Perl_pp_send),
- MEMBER_TO_FPTR(Perl_pp_recv),
- MEMBER_TO_FPTR(Perl_pp_eof),
- MEMBER_TO_FPTR(Perl_pp_tell),
- MEMBER_TO_FPTR(Perl_pp_seek),
- MEMBER_TO_FPTR(Perl_pp_truncate),
- MEMBER_TO_FPTR(Perl_pp_fcntl),
- MEMBER_TO_FPTR(Perl_pp_ioctl),
- MEMBER_TO_FPTR(Perl_pp_flock),
- MEMBER_TO_FPTR(Perl_pp_socket),
- MEMBER_TO_FPTR(Perl_pp_sockpair),
- MEMBER_TO_FPTR(Perl_pp_bind),
- MEMBER_TO_FPTR(Perl_pp_connect),
- MEMBER_TO_FPTR(Perl_pp_listen),
- MEMBER_TO_FPTR(Perl_pp_accept),
- MEMBER_TO_FPTR(Perl_pp_shutdown),
- MEMBER_TO_FPTR(Perl_pp_gsockopt),
- MEMBER_TO_FPTR(Perl_pp_ssockopt),
- MEMBER_TO_FPTR(Perl_pp_getsockname),
- MEMBER_TO_FPTR(Perl_pp_getpeername),
- MEMBER_TO_FPTR(Perl_pp_lstat),
- MEMBER_TO_FPTR(Perl_pp_stat),
- MEMBER_TO_FPTR(Perl_pp_ftrread),
- MEMBER_TO_FPTR(Perl_pp_ftrwrite),
- MEMBER_TO_FPTR(Perl_pp_ftrexec),
- MEMBER_TO_FPTR(Perl_pp_fteread),
- MEMBER_TO_FPTR(Perl_pp_ftewrite),
- MEMBER_TO_FPTR(Perl_pp_fteexec),
- MEMBER_TO_FPTR(Perl_pp_ftis),
- MEMBER_TO_FPTR(Perl_pp_fteowned),
- MEMBER_TO_FPTR(Perl_pp_ftrowned),
- MEMBER_TO_FPTR(Perl_pp_ftzero),
- MEMBER_TO_FPTR(Perl_pp_ftsize),
- MEMBER_TO_FPTR(Perl_pp_ftmtime),
- MEMBER_TO_FPTR(Perl_pp_ftatime),
- MEMBER_TO_FPTR(Perl_pp_ftctime),
- MEMBER_TO_FPTR(Perl_pp_ftsock),
- MEMBER_TO_FPTR(Perl_pp_ftchr),
- MEMBER_TO_FPTR(Perl_pp_ftblk),
- MEMBER_TO_FPTR(Perl_pp_ftfile),
- MEMBER_TO_FPTR(Perl_pp_ftdir),
- MEMBER_TO_FPTR(Perl_pp_ftpipe),
- MEMBER_TO_FPTR(Perl_pp_ftlink),
- MEMBER_TO_FPTR(Perl_pp_ftsuid),
- MEMBER_TO_FPTR(Perl_pp_ftsgid),
- MEMBER_TO_FPTR(Perl_pp_ftsvtx),
- MEMBER_TO_FPTR(Perl_pp_fttty),
- MEMBER_TO_FPTR(Perl_pp_fttext),
- MEMBER_TO_FPTR(Perl_pp_ftbinary),
- MEMBER_TO_FPTR(Perl_pp_chdir),
- MEMBER_TO_FPTR(Perl_pp_chown),
- MEMBER_TO_FPTR(Perl_pp_chroot),
- MEMBER_TO_FPTR(Perl_pp_unlink),
- MEMBER_TO_FPTR(Perl_pp_chmod),
- MEMBER_TO_FPTR(Perl_pp_utime),
- MEMBER_TO_FPTR(Perl_pp_rename),
- MEMBER_TO_FPTR(Perl_pp_link),
- MEMBER_TO_FPTR(Perl_pp_symlink),
- MEMBER_TO_FPTR(Perl_pp_readlink),
- MEMBER_TO_FPTR(Perl_pp_mkdir),
- MEMBER_TO_FPTR(Perl_pp_rmdir),
- MEMBER_TO_FPTR(Perl_pp_open_dir),
- MEMBER_TO_FPTR(Perl_pp_readdir),
- MEMBER_TO_FPTR(Perl_pp_telldir),
- MEMBER_TO_FPTR(Perl_pp_seekdir),
- MEMBER_TO_FPTR(Perl_pp_rewinddir),
- MEMBER_TO_FPTR(Perl_pp_closedir),
- MEMBER_TO_FPTR(Perl_pp_fork),
- MEMBER_TO_FPTR(Perl_pp_wait),
- MEMBER_TO_FPTR(Perl_pp_waitpid),
- MEMBER_TO_FPTR(Perl_pp_system),
- MEMBER_TO_FPTR(Perl_pp_exec),
- MEMBER_TO_FPTR(Perl_pp_kill),
- MEMBER_TO_FPTR(Perl_pp_getppid),
- MEMBER_TO_FPTR(Perl_pp_getpgrp),
- MEMBER_TO_FPTR(Perl_pp_setpgrp),
- MEMBER_TO_FPTR(Perl_pp_getpriority),
- MEMBER_TO_FPTR(Perl_pp_setpriority),
- MEMBER_TO_FPTR(Perl_pp_time),
- MEMBER_TO_FPTR(Perl_pp_tms),
- MEMBER_TO_FPTR(Perl_pp_localtime),
- MEMBER_TO_FPTR(Perl_pp_gmtime),
- MEMBER_TO_FPTR(Perl_pp_alarm),
- MEMBER_TO_FPTR(Perl_pp_sleep),
- MEMBER_TO_FPTR(Perl_pp_shmget),
- MEMBER_TO_FPTR(Perl_pp_shmctl),
- MEMBER_TO_FPTR(Perl_pp_shmread),
- MEMBER_TO_FPTR(Perl_pp_shmwrite),
- MEMBER_TO_FPTR(Perl_pp_msgget),
- MEMBER_TO_FPTR(Perl_pp_msgctl),
- MEMBER_TO_FPTR(Perl_pp_msgsnd),
- MEMBER_TO_FPTR(Perl_pp_msgrcv),
- MEMBER_TO_FPTR(Perl_pp_semget),
- MEMBER_TO_FPTR(Perl_pp_semctl),
- MEMBER_TO_FPTR(Perl_pp_semop),
- MEMBER_TO_FPTR(Perl_pp_require),
- MEMBER_TO_FPTR(Perl_pp_dofile),
- MEMBER_TO_FPTR(Perl_pp_entereval),
- MEMBER_TO_FPTR(Perl_pp_leaveeval),
- MEMBER_TO_FPTR(Perl_pp_entertry),
- MEMBER_TO_FPTR(Perl_pp_leavetry),
- MEMBER_TO_FPTR(Perl_pp_ghbyname),
- MEMBER_TO_FPTR(Perl_pp_ghbyaddr),
- MEMBER_TO_FPTR(Perl_pp_ghostent),
- MEMBER_TO_FPTR(Perl_pp_gnbyname),
- MEMBER_TO_FPTR(Perl_pp_gnbyaddr),
- MEMBER_TO_FPTR(Perl_pp_gnetent),
- MEMBER_TO_FPTR(Perl_pp_gpbyname),
- MEMBER_TO_FPTR(Perl_pp_gpbynumber),
- MEMBER_TO_FPTR(Perl_pp_gprotoent),
- MEMBER_TO_FPTR(Perl_pp_gsbyname),
- MEMBER_TO_FPTR(Perl_pp_gsbyport),
- MEMBER_TO_FPTR(Perl_pp_gservent),
- MEMBER_TO_FPTR(Perl_pp_shostent),
- MEMBER_TO_FPTR(Perl_pp_snetent),
- MEMBER_TO_FPTR(Perl_pp_sprotoent),
- MEMBER_TO_FPTR(Perl_pp_sservent),
- MEMBER_TO_FPTR(Perl_pp_ehostent),
- MEMBER_TO_FPTR(Perl_pp_enetent),
- MEMBER_TO_FPTR(Perl_pp_eprotoent),
- MEMBER_TO_FPTR(Perl_pp_eservent),
- MEMBER_TO_FPTR(Perl_pp_gpwnam),
- MEMBER_TO_FPTR(Perl_pp_gpwuid),
- MEMBER_TO_FPTR(Perl_pp_gpwent),
- MEMBER_TO_FPTR(Perl_pp_spwent),
- MEMBER_TO_FPTR(Perl_pp_epwent),
- MEMBER_TO_FPTR(Perl_pp_ggrnam),
- MEMBER_TO_FPTR(Perl_pp_ggrgid),
- MEMBER_TO_FPTR(Perl_pp_ggrent),
- MEMBER_TO_FPTR(Perl_pp_sgrent),
- MEMBER_TO_FPTR(Perl_pp_egrent),
- MEMBER_TO_FPTR(Perl_pp_getlogin),
- MEMBER_TO_FPTR(Perl_pp_syscall),
- MEMBER_TO_FPTR(Perl_pp_lock),
- MEMBER_TO_FPTR(Perl_pp_threadsv),
- MEMBER_TO_FPTR(Perl_pp_setstate),
- MEMBER_TO_FPTR(Perl_pp_method_named),
- MEMBER_TO_FPTR(Perl_pp_dor),
- MEMBER_TO_FPTR(Perl_pp_dorassign),
-};
+# ifndef PERL_GLOBAL_STRUCT
+# define PERL_PPADDR_INITED
+EXT Perl_ppaddr_t PL_ppaddr[] /* or perlvars.h */
+# endif
+#endif /* PERL_GLOBAL_STRUCT */
+#if (defined(DOINIT) && !defined(PERL_GLOBAL_STRUCT)) || defined(PERL_GLOBAL_STRUCT_INIT)
+# define PERL_PPADDR_INITED
+= {
+ Perl_pp_null,
+ Perl_pp_stub,
+ Perl_pp_scalar, /* implemented by Perl_pp_null */
+ Perl_pp_pushmark,
+ Perl_pp_wantarray,
+ Perl_pp_const,
+ Perl_pp_gvsv,
+ Perl_pp_gv,
+ Perl_pp_gelem,
+ Perl_pp_padsv,
+ Perl_pp_padav,
+ Perl_pp_padhv,
+ Perl_pp_padany, /* implemented by Perl_unimplemented_op */
+ Perl_pp_pushre,
+ Perl_pp_rv2gv,
+ Perl_pp_rv2sv,
+ Perl_pp_av2arylen,
+ Perl_pp_rv2cv,
+ Perl_pp_anoncode,
+ Perl_pp_prototype,
+ Perl_pp_refgen,
+ Perl_pp_srefgen,
+ Perl_pp_ref,
+ Perl_pp_bless,
+ Perl_pp_backtick,
+ Perl_pp_glob,
+ Perl_pp_readline,
+ Perl_pp_rcatline,
+ Perl_pp_regcmaybe, /* implemented by Perl_pp_null */
+ Perl_pp_regcreset,
+ Perl_pp_regcomp,
+ Perl_pp_match,
+ Perl_pp_qr,
+ Perl_pp_subst,
+ Perl_pp_substcont,
+ Perl_pp_trans,
+ Perl_pp_transr, /* implemented by Perl_pp_trans */
+ Perl_pp_sassign,
+ Perl_pp_aassign,
+ Perl_pp_chop,
+ Perl_pp_schop,
+ Perl_pp_chomp, /* implemented by Perl_pp_chop */
+ Perl_pp_schomp, /* implemented by Perl_pp_schop */
+ Perl_pp_defined,
+ Perl_pp_undef,
+ Perl_pp_study,
+ Perl_pp_pos,
+ Perl_pp_preinc,
+ Perl_pp_i_preinc, /* implemented by Perl_pp_preinc */
+ Perl_pp_predec,
+ Perl_pp_i_predec, /* implemented by Perl_pp_predec */
+ Perl_pp_postinc,
+ Perl_pp_i_postinc, /* implemented by Perl_pp_postinc */
+ Perl_pp_postdec,
+ Perl_pp_i_postdec, /* implemented by Perl_pp_postdec */
+ Perl_pp_pow,
+ Perl_pp_multiply,
+ Perl_pp_i_multiply,
+ Perl_pp_divide,
+ Perl_pp_i_divide,
+ Perl_pp_modulo,
+ Perl_pp_i_modulo,
+ Perl_pp_repeat,
+ Perl_pp_add,
+ Perl_pp_i_add,
+ Perl_pp_subtract,
+ Perl_pp_i_subtract,
+ Perl_pp_concat,
+ Perl_pp_stringify,
+ Perl_pp_left_shift,
+ Perl_pp_right_shift,
+ Perl_pp_lt,
+ Perl_pp_i_lt,
+ Perl_pp_gt,
+ Perl_pp_i_gt,
+ Perl_pp_le,
+ Perl_pp_i_le,
+ Perl_pp_ge,
+ Perl_pp_i_ge,
+ Perl_pp_eq,
+ Perl_pp_i_eq,
+ Perl_pp_ne,
+ Perl_pp_i_ne,
+ Perl_pp_ncmp,
+ Perl_pp_i_ncmp,
+ Perl_pp_slt, /* implemented by Perl_pp_sle */
+ Perl_pp_sgt, /* implemented by Perl_pp_sle */
+ Perl_pp_sle,
+ Perl_pp_sge, /* implemented by Perl_pp_sle */
+ Perl_pp_seq,
+ Perl_pp_sne,
+ Perl_pp_scmp,
+ Perl_pp_bit_and,
+ Perl_pp_bit_xor, /* implemented by Perl_pp_bit_or */
+ Perl_pp_bit_or,
+ Perl_pp_nbit_and,
+ Perl_pp_nbit_xor, /* implemented by Perl_pp_nbit_or */
+ Perl_pp_nbit_or,
+ Perl_pp_sbit_and,
+ Perl_pp_sbit_xor, /* implemented by Perl_pp_sbit_or */
+ Perl_pp_sbit_or,
+ Perl_pp_negate,
+ Perl_pp_i_negate,
+ Perl_pp_not,
+ Perl_pp_complement,
+ Perl_pp_ncomplement,
+ Perl_pp_scomplement,
+ Perl_pp_smartmatch,
+ Perl_pp_atan2,
+ Perl_pp_sin,
+ Perl_pp_cos, /* implemented by Perl_pp_sin */
+ Perl_pp_rand,
+ Perl_pp_srand,
+ Perl_pp_exp, /* implemented by Perl_pp_sin */
+ Perl_pp_log, /* implemented by Perl_pp_sin */
+ Perl_pp_sqrt, /* implemented by Perl_pp_sin */
+ Perl_pp_int,
+ Perl_pp_hex, /* implemented by Perl_pp_oct */
+ Perl_pp_oct,
+ Perl_pp_abs,
+ Perl_pp_length,
+ Perl_pp_substr,
+ Perl_pp_vec,
+ Perl_pp_index,
+ Perl_pp_rindex, /* implemented by Perl_pp_index */
+ Perl_pp_sprintf,
+ Perl_pp_formline,
+ Perl_pp_ord,
+ Perl_pp_chr,
+ Perl_pp_crypt,
+ Perl_pp_ucfirst,
+ Perl_pp_lcfirst, /* implemented by Perl_pp_ucfirst */
+ Perl_pp_uc,
+ Perl_pp_lc,
+ Perl_pp_quotemeta,
+ Perl_pp_rv2av,
+ Perl_pp_aelemfast,
+ Perl_pp_aelemfast_lex, /* implemented by Perl_pp_aelemfast */
+ Perl_pp_aelem,
+ Perl_pp_aslice,
+ Perl_pp_kvaslice,
+ Perl_pp_aeach,
+ Perl_pp_akeys,
+ Perl_pp_avalues, /* implemented by Perl_pp_akeys */
+ Perl_pp_each,
+ Perl_pp_values, /* implemented by Perl_do_kv */
+ Perl_pp_keys, /* implemented by Perl_do_kv */
+ Perl_pp_delete,
+ Perl_pp_exists,
+ Perl_pp_rv2hv, /* implemented by Perl_pp_rv2av */
+ Perl_pp_helem,
+ Perl_pp_hslice,
+ Perl_pp_kvhslice,
+ Perl_pp_multideref,
+ Perl_pp_unpack,
+ Perl_pp_pack,
+ Perl_pp_split,
+ Perl_pp_join,
+ Perl_pp_list,
+ Perl_pp_lslice,
+ Perl_pp_anonlist,
+ Perl_pp_anonhash,
+ Perl_pp_splice,
+ Perl_pp_push,
+ Perl_pp_pop, /* implemented by Perl_pp_shift */
+ Perl_pp_shift,
+ Perl_pp_unshift,
+ Perl_pp_sort,
+ Perl_pp_reverse,
+ Perl_pp_grepstart,
+ Perl_pp_grepwhile,
+ Perl_pp_mapstart, /* implemented by Perl_pp_grepstart */
+ Perl_pp_mapwhile,
+ Perl_pp_range,
+ Perl_pp_flip,
+ Perl_pp_flop,
+ Perl_pp_and,
+ Perl_pp_or,
+ Perl_pp_xor,
+ Perl_pp_dor, /* implemented by Perl_pp_defined */
+ Perl_pp_cond_expr,
+ Perl_pp_andassign, /* implemented by Perl_pp_and */
+ Perl_pp_orassign, /* implemented by Perl_pp_or */
+ Perl_pp_dorassign, /* implemented by Perl_pp_defined */
+ Perl_pp_method,
+ Perl_pp_entersub,
+ Perl_pp_leavesub,
+ Perl_pp_leavesublv,
+ Perl_pp_caller,
+ Perl_pp_warn,
+ Perl_pp_die,
+ Perl_pp_reset,
+ Perl_pp_lineseq, /* implemented by Perl_pp_null */
+ Perl_pp_nextstate,
+ Perl_pp_dbstate,
+ Perl_pp_unstack,
+ Perl_pp_enter,
+ Perl_pp_leave,
+ Perl_pp_scope, /* implemented by Perl_pp_null */
+ Perl_pp_enteriter,
+ Perl_pp_iter,
+ Perl_pp_enterloop,
+ Perl_pp_leaveloop,
+ Perl_pp_return,
+ Perl_pp_last,
+ Perl_pp_next,
+ Perl_pp_redo,
+ Perl_pp_dump, /* implemented by Perl_pp_goto */
+ Perl_pp_goto,
+ Perl_pp_exit,
+ Perl_pp_method_named,
+ Perl_pp_method_super,
+ Perl_pp_method_redir,
+ Perl_pp_method_redir_super,
+ Perl_pp_entergiven,
+ Perl_pp_leavegiven,
+ Perl_pp_enterwhen,
+ Perl_pp_leavewhen,
+ Perl_pp_break,
+ Perl_pp_continue,
+ Perl_pp_open,
+ Perl_pp_close,
+ Perl_pp_pipe_op,
+ Perl_pp_fileno,
+ Perl_pp_umask,
+ Perl_pp_binmode,
+ Perl_pp_tie,
+ Perl_pp_untie,
+ Perl_pp_tied,
+ Perl_pp_dbmopen,
+ Perl_pp_dbmclose, /* implemented by Perl_pp_untie */
+ Perl_pp_sselect,
+ Perl_pp_select,
+ Perl_pp_getc,
+ Perl_pp_read, /* implemented by Perl_pp_sysread */
+ Perl_pp_enterwrite,
+ Perl_pp_leavewrite,
+ Perl_pp_prtf,
+ Perl_pp_print,
+ Perl_pp_say, /* implemented by Perl_pp_print */
+ Perl_pp_sysopen,
+ Perl_pp_sysseek,
+ Perl_pp_sysread,
+ Perl_pp_syswrite,
+ Perl_pp_eof,
+ Perl_pp_tell,
+ Perl_pp_seek, /* implemented by Perl_pp_sysseek */
+ Perl_pp_truncate,
+ Perl_pp_fcntl, /* implemented by Perl_pp_ioctl */
+ Perl_pp_ioctl,
+ Perl_pp_flock,
+ Perl_pp_send, /* implemented by Perl_pp_syswrite */
+ Perl_pp_recv, /* implemented by Perl_pp_sysread */
+ Perl_pp_socket,
+ Perl_pp_sockpair,
+ Perl_pp_bind,
+ Perl_pp_connect, /* implemented by Perl_pp_bind */
+ Perl_pp_listen,
+ Perl_pp_accept,
+ Perl_pp_shutdown,
+ Perl_pp_gsockopt, /* implemented by Perl_pp_ssockopt */
+ Perl_pp_ssockopt,
+ Perl_pp_getsockname, /* implemented by Perl_pp_getpeername */
+ Perl_pp_getpeername,
+ Perl_pp_lstat, /* implemented by Perl_pp_stat */
+ Perl_pp_stat,
+ Perl_pp_ftrread,
+ Perl_pp_ftrwrite, /* implemented by Perl_pp_ftrread */
+ Perl_pp_ftrexec, /* implemented by Perl_pp_ftrread */
+ Perl_pp_fteread, /* implemented by Perl_pp_ftrread */
+ Perl_pp_ftewrite, /* implemented by Perl_pp_ftrread */
+ Perl_pp_fteexec, /* implemented by Perl_pp_ftrread */
+ Perl_pp_ftis,
+ Perl_pp_ftsize, /* implemented by Perl_pp_ftis */
+ Perl_pp_ftmtime, /* implemented by Perl_pp_ftis */
+ Perl_pp_ftatime, /* implemented by Perl_pp_ftis */
+ Perl_pp_ftctime, /* implemented by Perl_pp_ftis */
+ Perl_pp_ftrowned,
+ Perl_pp_fteowned, /* implemented by Perl_pp_ftrowned */
+ Perl_pp_ftzero, /* implemented by Perl_pp_ftrowned */
+ Perl_pp_ftsock, /* implemented by Perl_pp_ftrowned */
+ Perl_pp_ftchr, /* implemented by Perl_pp_ftrowned */
+ Perl_pp_ftblk, /* implemented by Perl_pp_ftrowned */
+ Perl_pp_ftfile, /* implemented by Perl_pp_ftrowned */
+ Perl_pp_ftdir, /* implemented by Perl_pp_ftrowned */
+ Perl_pp_ftpipe, /* implemented by Perl_pp_ftrowned */
+ Perl_pp_ftsuid, /* implemented by Perl_pp_ftrowned */
+ Perl_pp_ftsgid, /* implemented by Perl_pp_ftrowned */
+ Perl_pp_ftsvtx, /* implemented by Perl_pp_ftrowned */
+ Perl_pp_ftlink,
+ Perl_pp_fttty,
+ Perl_pp_fttext,
+ Perl_pp_ftbinary, /* implemented by Perl_pp_fttext */
+ Perl_pp_chdir,
+ Perl_pp_chown,
+ Perl_pp_chroot,
+ Perl_pp_unlink, /* implemented by Perl_pp_chown */
+ Perl_pp_chmod, /* implemented by Perl_pp_chown */
+ Perl_pp_utime, /* implemented by Perl_pp_chown */
+ Perl_pp_rename,
+ Perl_pp_link,
+ Perl_pp_symlink, /* implemented by Perl_pp_link */
+ Perl_pp_readlink,
+ Perl_pp_mkdir,
+ Perl_pp_rmdir,
+ Perl_pp_open_dir,
+ Perl_pp_readdir,
+ Perl_pp_telldir,
+ Perl_pp_seekdir,
+ Perl_pp_rewinddir,
+ Perl_pp_closedir,
+ Perl_pp_fork,
+ Perl_pp_wait,
+ Perl_pp_waitpid,
+ Perl_pp_system,
+ Perl_pp_exec,
+ Perl_pp_kill, /* implemented by Perl_pp_chown */
+ Perl_pp_getppid,
+ Perl_pp_getpgrp,
+ Perl_pp_setpgrp,
+ Perl_pp_getpriority,
+ Perl_pp_setpriority,
+ Perl_pp_time,
+ Perl_pp_tms,
+ Perl_pp_localtime, /* implemented by Perl_pp_gmtime */
+ Perl_pp_gmtime,
+ Perl_pp_alarm,
+ Perl_pp_sleep,
+ Perl_pp_shmget, /* implemented by Perl_pp_semget */
+ Perl_pp_shmctl, /* implemented by Perl_pp_semctl */
+ Perl_pp_shmread, /* implemented by Perl_pp_shmwrite */
+ Perl_pp_shmwrite,
+ Perl_pp_msgget, /* implemented by Perl_pp_semget */
+ Perl_pp_msgctl, /* implemented by Perl_pp_semctl */
+ Perl_pp_msgsnd, /* implemented by Perl_pp_shmwrite */
+ Perl_pp_msgrcv, /* implemented by Perl_pp_shmwrite */
+ Perl_pp_semop, /* implemented by Perl_pp_shmwrite */
+ Perl_pp_semget,
+ Perl_pp_semctl,
+ Perl_pp_require,
+ Perl_pp_dofile, /* implemented by Perl_pp_require */
+ Perl_pp_hintseval,
+ Perl_pp_entereval,
+ Perl_pp_leaveeval,
+ Perl_pp_entertry,
+ Perl_pp_leavetry,
+ Perl_pp_ghbyname, /* implemented by Perl_pp_ghostent */
+ Perl_pp_ghbyaddr, /* implemented by Perl_pp_ghostent */
+ Perl_pp_ghostent,
+ Perl_pp_gnbyname, /* implemented by Perl_pp_gnetent */
+ Perl_pp_gnbyaddr, /* implemented by Perl_pp_gnetent */
+ Perl_pp_gnetent,
+ Perl_pp_gpbyname, /* implemented by Perl_pp_gprotoent */
+ Perl_pp_gpbynumber, /* implemented by Perl_pp_gprotoent */
+ Perl_pp_gprotoent,
+ Perl_pp_gsbyname, /* implemented by Perl_pp_gservent */
+ Perl_pp_gsbyport, /* implemented by Perl_pp_gservent */
+ Perl_pp_gservent,
+ Perl_pp_shostent,
+ Perl_pp_snetent, /* implemented by Perl_pp_shostent */
+ Perl_pp_sprotoent, /* implemented by Perl_pp_shostent */
+ Perl_pp_sservent, /* implemented by Perl_pp_shostent */
+ Perl_pp_ehostent,
+ Perl_pp_enetent, /* implemented by Perl_pp_ehostent */
+ Perl_pp_eprotoent, /* implemented by Perl_pp_ehostent */
+ Perl_pp_eservent, /* implemented by Perl_pp_ehostent */
+ Perl_pp_gpwnam, /* implemented by Perl_pp_gpwent */
+ Perl_pp_gpwuid, /* implemented by Perl_pp_gpwent */
+ Perl_pp_gpwent,
+ Perl_pp_spwent, /* implemented by Perl_pp_ehostent */
+ Perl_pp_epwent, /* implemented by Perl_pp_ehostent */
+ Perl_pp_ggrnam, /* implemented by Perl_pp_ggrent */
+ Perl_pp_ggrgid, /* implemented by Perl_pp_ggrent */
+ Perl_pp_ggrent,
+ Perl_pp_sgrent, /* implemented by Perl_pp_ehostent */
+ Perl_pp_egrent, /* implemented by Perl_pp_ehostent */
+ Perl_pp_getlogin,
+ Perl_pp_syscall,
+ Perl_pp_lock,
+ Perl_pp_once,
+ Perl_pp_custom, /* implemented by Perl_unimplemented_op */
+ Perl_pp_coreargs,
+ Perl_pp_runcv,
+ Perl_pp_fc,
+ Perl_pp_padcv,
+ Perl_pp_introcv,
+ Perl_pp_clonecv,
+ Perl_pp_padrange,
+ Perl_pp_refassign,
+ Perl_pp_lvref,
+ Perl_pp_lvrefslice,
+ Perl_pp_lvavref,
+ Perl_pp_anonconst,
+}
+#endif
+#ifdef PERL_PPADDR_INITED
+;
#endif
-#ifndef DOINIT
-EXT OP * (CPERLscope(*PL_check)[]) (pTHX_ OP *op);
+#ifdef PERL_GLOBAL_STRUCT_INIT
+# define PERL_CHECK_INITED
+static const Perl_check_t Gcheck[]
#else
-EXT OP * (CPERLscope(*PL_check)[]) (pTHX_ OP *op) = {
- MEMBER_TO_FPTR(Perl_ck_null), /* null */
- MEMBER_TO_FPTR(Perl_ck_null), /* stub */
- MEMBER_TO_FPTR(Perl_ck_fun), /* scalar */
- MEMBER_TO_FPTR(Perl_ck_null), /* pushmark */
- MEMBER_TO_FPTR(Perl_ck_null), /* wantarray */
- MEMBER_TO_FPTR(Perl_ck_svconst), /* const */
- MEMBER_TO_FPTR(Perl_ck_null), /* gvsv */
- MEMBER_TO_FPTR(Perl_ck_null), /* gv */
- MEMBER_TO_FPTR(Perl_ck_null), /* gelem */
- MEMBER_TO_FPTR(Perl_ck_null), /* padsv */
- MEMBER_TO_FPTR(Perl_ck_null), /* padav */
- MEMBER_TO_FPTR(Perl_ck_null), /* padhv */
- MEMBER_TO_FPTR(Perl_ck_null), /* padany */
- MEMBER_TO_FPTR(Perl_ck_null), /* pushre */
- MEMBER_TO_FPTR(Perl_ck_rvconst), /* rv2gv */
- MEMBER_TO_FPTR(Perl_ck_rvconst), /* rv2sv */
- MEMBER_TO_FPTR(Perl_ck_null), /* av2arylen */
- MEMBER_TO_FPTR(Perl_ck_rvconst), /* rv2cv */
- MEMBER_TO_FPTR(Perl_ck_anoncode), /* anoncode */
- MEMBER_TO_FPTR(Perl_ck_null), /* prototype */
- MEMBER_TO_FPTR(Perl_ck_spair), /* refgen */
- MEMBER_TO_FPTR(Perl_ck_null), /* srefgen */
- MEMBER_TO_FPTR(Perl_ck_fun), /* ref */
- MEMBER_TO_FPTR(Perl_ck_fun), /* bless */
- MEMBER_TO_FPTR(Perl_ck_open), /* backtick */
- MEMBER_TO_FPTR(Perl_ck_glob), /* glob */
- MEMBER_TO_FPTR(Perl_ck_null), /* readline */
- MEMBER_TO_FPTR(Perl_ck_null), /* rcatline */
- MEMBER_TO_FPTR(Perl_ck_fun), /* regcmaybe */
- MEMBER_TO_FPTR(Perl_ck_fun), /* regcreset */
- 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_null), /* substcont */
- MEMBER_TO_FPTR(Perl_ck_null), /* trans */
- MEMBER_TO_FPTR(Perl_ck_sassign), /* sassign */
- MEMBER_TO_FPTR(Perl_ck_null), /* aassign */
- MEMBER_TO_FPTR(Perl_ck_spair), /* chop */
- MEMBER_TO_FPTR(Perl_ck_null), /* schop */
- MEMBER_TO_FPTR(Perl_ck_spair), /* chomp */
- MEMBER_TO_FPTR(Perl_ck_null), /* schomp */
- MEMBER_TO_FPTR(Perl_ck_defined), /* defined */
- MEMBER_TO_FPTR(Perl_ck_lfun), /* undef */
- MEMBER_TO_FPTR(Perl_ck_fun), /* study */
- MEMBER_TO_FPTR(Perl_ck_lfun), /* pos */
- MEMBER_TO_FPTR(Perl_ck_lfun), /* preinc */
- MEMBER_TO_FPTR(Perl_ck_lfun), /* i_preinc */
- MEMBER_TO_FPTR(Perl_ck_lfun), /* predec */
- MEMBER_TO_FPTR(Perl_ck_lfun), /* i_predec */
- MEMBER_TO_FPTR(Perl_ck_lfun), /* postinc */
- MEMBER_TO_FPTR(Perl_ck_lfun), /* i_postinc */
- MEMBER_TO_FPTR(Perl_ck_lfun), /* postdec */
- MEMBER_TO_FPTR(Perl_ck_lfun), /* i_postdec */
- MEMBER_TO_FPTR(Perl_ck_null), /* pow */
- MEMBER_TO_FPTR(Perl_ck_null), /* multiply */
- MEMBER_TO_FPTR(Perl_ck_null), /* i_multiply */
- MEMBER_TO_FPTR(Perl_ck_null), /* divide */
- MEMBER_TO_FPTR(Perl_ck_null), /* i_divide */
- MEMBER_TO_FPTR(Perl_ck_null), /* modulo */
- MEMBER_TO_FPTR(Perl_ck_null), /* i_modulo */
- MEMBER_TO_FPTR(Perl_ck_repeat), /* repeat */
- MEMBER_TO_FPTR(Perl_ck_null), /* add */
- MEMBER_TO_FPTR(Perl_ck_null), /* i_add */
- MEMBER_TO_FPTR(Perl_ck_null), /* subtract */
- MEMBER_TO_FPTR(Perl_ck_null), /* i_subtract */
- MEMBER_TO_FPTR(Perl_ck_concat), /* concat */
- MEMBER_TO_FPTR(Perl_ck_fun), /* stringify */
- MEMBER_TO_FPTR(Perl_ck_bitop), /* left_shift */
- MEMBER_TO_FPTR(Perl_ck_bitop), /* right_shift */
- MEMBER_TO_FPTR(Perl_ck_null), /* lt */
- MEMBER_TO_FPTR(Perl_ck_null), /* i_lt */
- MEMBER_TO_FPTR(Perl_ck_null), /* gt */
- MEMBER_TO_FPTR(Perl_ck_null), /* i_gt */
- MEMBER_TO_FPTR(Perl_ck_null), /* le */
- MEMBER_TO_FPTR(Perl_ck_null), /* i_le */
- MEMBER_TO_FPTR(Perl_ck_null), /* ge */
- MEMBER_TO_FPTR(Perl_ck_null), /* i_ge */
- MEMBER_TO_FPTR(Perl_ck_null), /* eq */
- MEMBER_TO_FPTR(Perl_ck_null), /* i_eq */
- MEMBER_TO_FPTR(Perl_ck_null), /* ne */
- MEMBER_TO_FPTR(Perl_ck_null), /* i_ne */
- MEMBER_TO_FPTR(Perl_ck_null), /* ncmp */
- MEMBER_TO_FPTR(Perl_ck_null), /* i_ncmp */
- MEMBER_TO_FPTR(Perl_ck_null), /* slt */
- MEMBER_TO_FPTR(Perl_ck_null), /* sgt */
- MEMBER_TO_FPTR(Perl_ck_null), /* sle */
- MEMBER_TO_FPTR(Perl_ck_null), /* sge */
- MEMBER_TO_FPTR(Perl_ck_null), /* seq */
- MEMBER_TO_FPTR(Perl_ck_null), /* sne */
- MEMBER_TO_FPTR(Perl_ck_null), /* scmp */
- MEMBER_TO_FPTR(Perl_ck_bitop), /* bit_and */
- MEMBER_TO_FPTR(Perl_ck_bitop), /* bit_xor */
- MEMBER_TO_FPTR(Perl_ck_bitop), /* bit_or */
- MEMBER_TO_FPTR(Perl_ck_null), /* negate */
- MEMBER_TO_FPTR(Perl_ck_null), /* i_negate */
- MEMBER_TO_FPTR(Perl_ck_null), /* not */
- MEMBER_TO_FPTR(Perl_ck_bitop), /* complement */
- MEMBER_TO_FPTR(Perl_ck_fun), /* atan2 */
- MEMBER_TO_FPTR(Perl_ck_fun), /* sin */
- MEMBER_TO_FPTR(Perl_ck_fun), /* cos */
- MEMBER_TO_FPTR(Perl_ck_fun), /* rand */
- MEMBER_TO_FPTR(Perl_ck_fun), /* srand */
- MEMBER_TO_FPTR(Perl_ck_fun), /* exp */
- MEMBER_TO_FPTR(Perl_ck_fun), /* log */
- MEMBER_TO_FPTR(Perl_ck_fun), /* sqrt */
- MEMBER_TO_FPTR(Perl_ck_fun), /* int */
- MEMBER_TO_FPTR(Perl_ck_fun), /* hex */
- MEMBER_TO_FPTR(Perl_ck_fun), /* oct */
- MEMBER_TO_FPTR(Perl_ck_fun), /* abs */
- MEMBER_TO_FPTR(Perl_ck_lengthconst), /* length */
- MEMBER_TO_FPTR(Perl_ck_substr), /* substr */
- MEMBER_TO_FPTR(Perl_ck_fun), /* vec */
- MEMBER_TO_FPTR(Perl_ck_index), /* index */
- MEMBER_TO_FPTR(Perl_ck_index), /* rindex */
- MEMBER_TO_FPTR(Perl_ck_fun), /* sprintf */
- MEMBER_TO_FPTR(Perl_ck_fun), /* formline */
- MEMBER_TO_FPTR(Perl_ck_fun), /* ord */
- MEMBER_TO_FPTR(Perl_ck_fun), /* chr */
- MEMBER_TO_FPTR(Perl_ck_fun), /* crypt */
- MEMBER_TO_FPTR(Perl_ck_fun), /* ucfirst */
- MEMBER_TO_FPTR(Perl_ck_fun), /* lcfirst */
- MEMBER_TO_FPTR(Perl_ck_fun), /* uc */
- MEMBER_TO_FPTR(Perl_ck_fun), /* lc */
- MEMBER_TO_FPTR(Perl_ck_fun), /* quotemeta */
- MEMBER_TO_FPTR(Perl_ck_rvconst), /* rv2av */
- MEMBER_TO_FPTR(Perl_ck_null), /* aelemfast */
- MEMBER_TO_FPTR(Perl_ck_null), /* aelem */
- MEMBER_TO_FPTR(Perl_ck_null), /* aslice */
- MEMBER_TO_FPTR(Perl_ck_fun), /* each */
- MEMBER_TO_FPTR(Perl_ck_fun), /* values */
- MEMBER_TO_FPTR(Perl_ck_fun), /* keys */
- MEMBER_TO_FPTR(Perl_ck_delete), /* delete */
- MEMBER_TO_FPTR(Perl_ck_exists), /* exists */
- 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_fun), /* pack */
- MEMBER_TO_FPTR(Perl_ck_split), /* split */
- MEMBER_TO_FPTR(Perl_ck_join), /* join */
- MEMBER_TO_FPTR(Perl_ck_null), /* list */
- MEMBER_TO_FPTR(Perl_ck_null), /* lslice */
- MEMBER_TO_FPTR(Perl_ck_fun), /* anonlist */
- MEMBER_TO_FPTR(Perl_ck_fun), /* anonhash */
- MEMBER_TO_FPTR(Perl_ck_fun), /* splice */
- MEMBER_TO_FPTR(Perl_ck_fun), /* push */
- MEMBER_TO_FPTR(Perl_ck_shift), /* pop */
- MEMBER_TO_FPTR(Perl_ck_shift), /* shift */
- MEMBER_TO_FPTR(Perl_ck_fun), /* unshift */
- MEMBER_TO_FPTR(Perl_ck_sort), /* sort */
- MEMBER_TO_FPTR(Perl_ck_fun), /* reverse */
- MEMBER_TO_FPTR(Perl_ck_grep), /* grepstart */
- MEMBER_TO_FPTR(Perl_ck_null), /* grepwhile */
- MEMBER_TO_FPTR(Perl_ck_grep), /* mapstart */
- MEMBER_TO_FPTR(Perl_ck_null), /* mapwhile */
- MEMBER_TO_FPTR(Perl_ck_null), /* range */
- MEMBER_TO_FPTR(Perl_ck_null), /* flip */
- MEMBER_TO_FPTR(Perl_ck_null), /* flop */
- MEMBER_TO_FPTR(Perl_ck_null), /* and */
- MEMBER_TO_FPTR(Perl_ck_null), /* or */
- MEMBER_TO_FPTR(Perl_ck_null), /* xor */
- MEMBER_TO_FPTR(Perl_ck_null), /* cond_expr */
- MEMBER_TO_FPTR(Perl_ck_null), /* andassign */
- MEMBER_TO_FPTR(Perl_ck_null), /* orassign */
- MEMBER_TO_FPTR(Perl_ck_method), /* method */
- MEMBER_TO_FPTR(Perl_ck_subr), /* entersub */
- MEMBER_TO_FPTR(Perl_ck_null), /* leavesub */
- MEMBER_TO_FPTR(Perl_ck_null), /* leavesublv */
- MEMBER_TO_FPTR(Perl_ck_fun), /* caller */
- MEMBER_TO_FPTR(Perl_ck_fun), /* warn */
- MEMBER_TO_FPTR(Perl_ck_die), /* die */
- MEMBER_TO_FPTR(Perl_ck_fun), /* reset */
- MEMBER_TO_FPTR(Perl_ck_null), /* lineseq */
- MEMBER_TO_FPTR(Perl_ck_null), /* nextstate */
- MEMBER_TO_FPTR(Perl_ck_null), /* dbstate */
- MEMBER_TO_FPTR(Perl_ck_null), /* unstack */
- MEMBER_TO_FPTR(Perl_ck_null), /* enter */
- MEMBER_TO_FPTR(Perl_ck_null), /* leave */
- MEMBER_TO_FPTR(Perl_ck_null), /* scope */
- MEMBER_TO_FPTR(Perl_ck_null), /* enteriter */
- MEMBER_TO_FPTR(Perl_ck_null), /* iter */
- MEMBER_TO_FPTR(Perl_ck_null), /* enterloop */
- MEMBER_TO_FPTR(Perl_ck_null), /* leaveloop */
- MEMBER_TO_FPTR(Perl_ck_return), /* return */
- MEMBER_TO_FPTR(Perl_ck_null), /* last */
- MEMBER_TO_FPTR(Perl_ck_null), /* next */
- MEMBER_TO_FPTR(Perl_ck_null), /* redo */
- MEMBER_TO_FPTR(Perl_ck_null), /* dump */
- MEMBER_TO_FPTR(Perl_ck_null), /* goto */
- MEMBER_TO_FPTR(Perl_ck_exit), /* exit */
- MEMBER_TO_FPTR(Perl_ck_open), /* open */
- MEMBER_TO_FPTR(Perl_ck_fun), /* close */
- MEMBER_TO_FPTR(Perl_ck_fun), /* pipe_op */
- MEMBER_TO_FPTR(Perl_ck_fun), /* fileno */
- MEMBER_TO_FPTR(Perl_ck_fun), /* umask */
- MEMBER_TO_FPTR(Perl_ck_fun), /* binmode */
- MEMBER_TO_FPTR(Perl_ck_fun), /* tie */
- MEMBER_TO_FPTR(Perl_ck_fun), /* untie */
- MEMBER_TO_FPTR(Perl_ck_fun), /* tied */
- MEMBER_TO_FPTR(Perl_ck_fun), /* dbmopen */
- MEMBER_TO_FPTR(Perl_ck_fun), /* dbmclose */
- MEMBER_TO_FPTR(Perl_ck_select), /* sselect */
- MEMBER_TO_FPTR(Perl_ck_select), /* select */
- MEMBER_TO_FPTR(Perl_ck_eof), /* getc */
- MEMBER_TO_FPTR(Perl_ck_fun), /* read */
- MEMBER_TO_FPTR(Perl_ck_fun), /* enterwrite */
- MEMBER_TO_FPTR(Perl_ck_null), /* leavewrite */
- MEMBER_TO_FPTR(Perl_ck_listiob), /* prtf */
- MEMBER_TO_FPTR(Perl_ck_listiob), /* print */
- MEMBER_TO_FPTR(Perl_ck_fun), /* sysopen */
- MEMBER_TO_FPTR(Perl_ck_fun), /* sysseek */
- MEMBER_TO_FPTR(Perl_ck_fun), /* sysread */
- MEMBER_TO_FPTR(Perl_ck_fun), /* syswrite */
- MEMBER_TO_FPTR(Perl_ck_fun), /* send */
- MEMBER_TO_FPTR(Perl_ck_fun), /* recv */
- MEMBER_TO_FPTR(Perl_ck_eof), /* eof */
- MEMBER_TO_FPTR(Perl_ck_fun), /* tell */
- MEMBER_TO_FPTR(Perl_ck_fun), /* seek */
- MEMBER_TO_FPTR(Perl_ck_trunc), /* truncate */
- MEMBER_TO_FPTR(Perl_ck_fun), /* fcntl */
- MEMBER_TO_FPTR(Perl_ck_fun), /* ioctl */
- MEMBER_TO_FPTR(Perl_ck_fun), /* flock */
- MEMBER_TO_FPTR(Perl_ck_fun), /* socket */
- MEMBER_TO_FPTR(Perl_ck_fun), /* sockpair */
- MEMBER_TO_FPTR(Perl_ck_fun), /* bind */
- MEMBER_TO_FPTR(Perl_ck_fun), /* connect */
- MEMBER_TO_FPTR(Perl_ck_fun), /* listen */
- MEMBER_TO_FPTR(Perl_ck_fun), /* accept */
- MEMBER_TO_FPTR(Perl_ck_fun), /* shutdown */
- MEMBER_TO_FPTR(Perl_ck_fun), /* gsockopt */
- MEMBER_TO_FPTR(Perl_ck_fun), /* ssockopt */
- MEMBER_TO_FPTR(Perl_ck_fun), /* getsockname */
- MEMBER_TO_FPTR(Perl_ck_fun), /* getpeername */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* lstat */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* stat */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftrread */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftrwrite */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftrexec */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* fteread */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftewrite */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* fteexec */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftis */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* fteowned */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftrowned */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftzero */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftsize */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftmtime */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftatime */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftctime */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftsock */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftchr */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftblk */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftfile */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftdir */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftpipe */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftlink */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftsuid */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftsgid */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftsvtx */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* fttty */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* fttext */
- MEMBER_TO_FPTR(Perl_ck_ftst), /* ftbinary */
- MEMBER_TO_FPTR(Perl_ck_fun), /* chdir */
- MEMBER_TO_FPTR(Perl_ck_fun), /* chown */
- MEMBER_TO_FPTR(Perl_ck_fun), /* chroot */
- MEMBER_TO_FPTR(Perl_ck_fun), /* unlink */
- MEMBER_TO_FPTR(Perl_ck_fun), /* chmod */
- MEMBER_TO_FPTR(Perl_ck_fun), /* utime */
- MEMBER_TO_FPTR(Perl_ck_fun), /* rename */
- MEMBER_TO_FPTR(Perl_ck_fun), /* link */
- MEMBER_TO_FPTR(Perl_ck_fun), /* symlink */
- MEMBER_TO_FPTR(Perl_ck_fun), /* readlink */
- MEMBER_TO_FPTR(Perl_ck_fun), /* mkdir */
- MEMBER_TO_FPTR(Perl_ck_fun), /* rmdir */
- MEMBER_TO_FPTR(Perl_ck_fun), /* open_dir */
- MEMBER_TO_FPTR(Perl_ck_fun), /* readdir */
- MEMBER_TO_FPTR(Perl_ck_fun), /* telldir */
- MEMBER_TO_FPTR(Perl_ck_fun), /* seekdir */
- MEMBER_TO_FPTR(Perl_ck_fun), /* rewinddir */
- MEMBER_TO_FPTR(Perl_ck_fun), /* closedir */
- MEMBER_TO_FPTR(Perl_ck_null), /* fork */
- MEMBER_TO_FPTR(Perl_ck_null), /* wait */
- MEMBER_TO_FPTR(Perl_ck_fun), /* waitpid */
- MEMBER_TO_FPTR(Perl_ck_exec), /* system */
- MEMBER_TO_FPTR(Perl_ck_exec), /* exec */
- MEMBER_TO_FPTR(Perl_ck_fun), /* kill */
- MEMBER_TO_FPTR(Perl_ck_null), /* getppid */
- MEMBER_TO_FPTR(Perl_ck_fun), /* getpgrp */
- MEMBER_TO_FPTR(Perl_ck_fun), /* setpgrp */
- MEMBER_TO_FPTR(Perl_ck_fun), /* getpriority */
- MEMBER_TO_FPTR(Perl_ck_fun), /* setpriority */
- MEMBER_TO_FPTR(Perl_ck_null), /* time */
- MEMBER_TO_FPTR(Perl_ck_null), /* tms */
- MEMBER_TO_FPTR(Perl_ck_fun), /* localtime */
- MEMBER_TO_FPTR(Perl_ck_fun), /* gmtime */
- MEMBER_TO_FPTR(Perl_ck_fun), /* alarm */
- MEMBER_TO_FPTR(Perl_ck_fun), /* sleep */
- MEMBER_TO_FPTR(Perl_ck_fun), /* shmget */
- MEMBER_TO_FPTR(Perl_ck_fun), /* shmctl */
- MEMBER_TO_FPTR(Perl_ck_fun), /* shmread */
- MEMBER_TO_FPTR(Perl_ck_fun), /* shmwrite */
- MEMBER_TO_FPTR(Perl_ck_fun), /* msgget */
- MEMBER_TO_FPTR(Perl_ck_fun), /* msgctl */
- MEMBER_TO_FPTR(Perl_ck_fun), /* msgsnd */
- MEMBER_TO_FPTR(Perl_ck_fun), /* msgrcv */
- MEMBER_TO_FPTR(Perl_ck_fun), /* semget */
- MEMBER_TO_FPTR(Perl_ck_fun), /* semctl */
- MEMBER_TO_FPTR(Perl_ck_fun), /* semop */
- MEMBER_TO_FPTR(Perl_ck_require), /* require */
- MEMBER_TO_FPTR(Perl_ck_fun), /* dofile */
- MEMBER_TO_FPTR(Perl_ck_eval), /* entereval */
- MEMBER_TO_FPTR(Perl_ck_null), /* leaveeval */
- MEMBER_TO_FPTR(Perl_ck_null), /* entertry */
- MEMBER_TO_FPTR(Perl_ck_null), /* leavetry */
- MEMBER_TO_FPTR(Perl_ck_fun), /* ghbyname */
- MEMBER_TO_FPTR(Perl_ck_fun), /* ghbyaddr */
- MEMBER_TO_FPTR(Perl_ck_null), /* ghostent */
- MEMBER_TO_FPTR(Perl_ck_fun), /* gnbyname */
- MEMBER_TO_FPTR(Perl_ck_fun), /* gnbyaddr */
- MEMBER_TO_FPTR(Perl_ck_null), /* gnetent */
- MEMBER_TO_FPTR(Perl_ck_fun), /* gpbyname */
- MEMBER_TO_FPTR(Perl_ck_fun), /* gpbynumber */
- MEMBER_TO_FPTR(Perl_ck_null), /* gprotoent */
- MEMBER_TO_FPTR(Perl_ck_fun), /* gsbyname */
- MEMBER_TO_FPTR(Perl_ck_fun), /* gsbyport */
- MEMBER_TO_FPTR(Perl_ck_null), /* gservent */
- MEMBER_TO_FPTR(Perl_ck_fun), /* shostent */
- MEMBER_TO_FPTR(Perl_ck_fun), /* snetent */
- MEMBER_TO_FPTR(Perl_ck_fun), /* sprotoent */
- MEMBER_TO_FPTR(Perl_ck_fun), /* sservent */
- MEMBER_TO_FPTR(Perl_ck_null), /* ehostent */
- MEMBER_TO_FPTR(Perl_ck_null), /* enetent */
- MEMBER_TO_FPTR(Perl_ck_null), /* eprotoent */
- MEMBER_TO_FPTR(Perl_ck_null), /* eservent */
- MEMBER_TO_FPTR(Perl_ck_fun), /* gpwnam */
- MEMBER_TO_FPTR(Perl_ck_fun), /* gpwuid */
- MEMBER_TO_FPTR(Perl_ck_null), /* gpwent */
- MEMBER_TO_FPTR(Perl_ck_null), /* spwent */
- MEMBER_TO_FPTR(Perl_ck_null), /* epwent */
- MEMBER_TO_FPTR(Perl_ck_fun), /* ggrnam */
- MEMBER_TO_FPTR(Perl_ck_fun), /* ggrgid */
- MEMBER_TO_FPTR(Perl_ck_null), /* ggrent */
- MEMBER_TO_FPTR(Perl_ck_null), /* sgrent */
- MEMBER_TO_FPTR(Perl_ck_null), /* egrent */
- MEMBER_TO_FPTR(Perl_ck_null), /* getlogin */
- MEMBER_TO_FPTR(Perl_ck_fun), /* syscall */
- MEMBER_TO_FPTR(Perl_ck_rfun), /* lock */
- MEMBER_TO_FPTR(Perl_ck_null), /* threadsv */
- MEMBER_TO_FPTR(Perl_ck_null), /* setstate */
- MEMBER_TO_FPTR(Perl_ck_null), /* method_named */
- MEMBER_TO_FPTR(Perl_ck_null), /* dor */
- MEMBER_TO_FPTR(Perl_ck_null), /* dorassign */
- MEMBER_TO_FPTR(Perl_ck_null), /* custom */
-};
+# ifndef PERL_GLOBAL_STRUCT
+# define PERL_CHECK_INITED
+EXT Perl_check_t PL_check[] /* or perlvars.h */
+# endif
#endif
+#if (defined(DOINIT) && !defined(PERL_GLOBAL_STRUCT)) || defined(PERL_GLOBAL_STRUCT_INIT)
+# define PERL_CHECK_INITED
+= {
+ Perl_ck_null, /* null */
+ Perl_ck_null, /* stub */
+ Perl_ck_fun, /* scalar */
+ Perl_ck_null, /* pushmark */
+ Perl_ck_null, /* wantarray */
+ Perl_ck_svconst, /* const */
+ Perl_ck_null, /* gvsv */
+ Perl_ck_null, /* gv */
+ Perl_ck_null, /* gelem */
+ Perl_ck_null, /* padsv */
+ Perl_ck_null, /* padav */
+ Perl_ck_null, /* padhv */
+ Perl_ck_null, /* padany */
+ Perl_ck_null, /* pushre */
+ Perl_ck_rvconst, /* rv2gv */
+ Perl_ck_rvconst, /* rv2sv */
+ Perl_ck_null, /* av2arylen */
+ Perl_ck_rvconst, /* rv2cv */
+ Perl_ck_anoncode, /* anoncode */
+ Perl_ck_prototype, /* prototype */
+ Perl_ck_spair, /* refgen */
+ Perl_ck_null, /* srefgen */
+ Perl_ck_fun, /* ref */
+ Perl_ck_fun, /* bless */
+ Perl_ck_backtick, /* backtick */
+ Perl_ck_glob, /* glob */
+ Perl_ck_readline, /* readline */
+ Perl_ck_null, /* rcatline */
+ Perl_ck_fun, /* regcmaybe */
+ Perl_ck_fun, /* regcreset */
+ Perl_ck_null, /* regcomp */
+ Perl_ck_match, /* match */
+ Perl_ck_match, /* qr */
+ Perl_ck_match, /* subst */
+ Perl_ck_null, /* substcont */
+ Perl_ck_match, /* trans */
+ Perl_ck_match, /* transr */
+ Perl_ck_sassign, /* sassign */
+ Perl_ck_null, /* aassign */
+ Perl_ck_spair, /* chop */
+ Perl_ck_null, /* schop */
+ Perl_ck_spair, /* chomp */
+ Perl_ck_null, /* schomp */
+ Perl_ck_defined, /* defined */
+ Perl_ck_fun, /* undef */
+ Perl_ck_fun, /* study */
+ Perl_ck_fun, /* pos */
+ Perl_ck_lfun, /* preinc */
+ Perl_ck_lfun, /* i_preinc */
+ Perl_ck_lfun, /* predec */
+ Perl_ck_lfun, /* i_predec */
+ Perl_ck_lfun, /* postinc */
+ Perl_ck_lfun, /* i_postinc */
+ Perl_ck_lfun, /* postdec */
+ Perl_ck_lfun, /* i_postdec */
+ Perl_ck_null, /* pow */
+ Perl_ck_null, /* multiply */
+ Perl_ck_null, /* i_multiply */
+ Perl_ck_null, /* divide */
+ Perl_ck_null, /* i_divide */
+ Perl_ck_null, /* modulo */
+ Perl_ck_null, /* i_modulo */
+ Perl_ck_repeat, /* repeat */
+ Perl_ck_null, /* add */
+ Perl_ck_null, /* i_add */
+ Perl_ck_null, /* subtract */
+ Perl_ck_null, /* i_subtract */
+ Perl_ck_concat, /* concat */
+ Perl_ck_stringify, /* stringify */
+ Perl_ck_bitop, /* left_shift */
+ Perl_ck_bitop, /* right_shift */
+ Perl_ck_cmp, /* lt */
+ Perl_ck_cmp, /* i_lt */
+ Perl_ck_cmp, /* gt */
+ Perl_ck_cmp, /* i_gt */
+ Perl_ck_cmp, /* le */
+ Perl_ck_cmp, /* i_le */
+ Perl_ck_cmp, /* ge */
+ Perl_ck_cmp, /* i_ge */
+ Perl_ck_null, /* eq */
+ Perl_ck_null, /* i_eq */
+ Perl_ck_null, /* ne */
+ Perl_ck_null, /* i_ne */
+ Perl_ck_null, /* ncmp */
+ Perl_ck_null, /* i_ncmp */
+ Perl_ck_null, /* slt */
+ Perl_ck_null, /* sgt */
+ Perl_ck_null, /* sle */
+ Perl_ck_null, /* sge */
+ Perl_ck_null, /* seq */
+ Perl_ck_null, /* sne */
+ Perl_ck_null, /* scmp */
+ Perl_ck_bitop, /* bit_and */
+ Perl_ck_bitop, /* bit_xor */
+ Perl_ck_bitop, /* bit_or */
+ Perl_ck_bitop, /* nbit_and */
+ Perl_ck_bitop, /* nbit_xor */
+ Perl_ck_bitop, /* nbit_or */
+ Perl_ck_bitop, /* sbit_and */
+ Perl_ck_bitop, /* sbit_xor */
+ Perl_ck_bitop, /* sbit_or */
+ Perl_ck_null, /* negate */
+ Perl_ck_null, /* i_negate */
+ Perl_ck_null, /* not */
+ Perl_ck_bitop, /* complement */
+ Perl_ck_bitop, /* ncomplement */
+ Perl_ck_bitop, /* scomplement */
+ Perl_ck_smartmatch, /* smartmatch */
+ Perl_ck_fun, /* atan2 */
+ Perl_ck_fun, /* sin */
+ Perl_ck_fun, /* cos */
+ Perl_ck_fun, /* rand */
+ Perl_ck_fun, /* srand */
+ Perl_ck_fun, /* exp */
+ Perl_ck_fun, /* log */
+ Perl_ck_fun, /* sqrt */
+ Perl_ck_fun, /* int */
+ Perl_ck_fun, /* hex */
+ Perl_ck_fun, /* oct */
+ Perl_ck_fun, /* abs */
+ Perl_ck_length, /* length */
+ Perl_ck_substr, /* substr */
+ Perl_ck_fun, /* vec */
+ Perl_ck_index, /* index */
+ Perl_ck_index, /* rindex */
+ Perl_ck_lfun, /* sprintf */
+ Perl_ck_fun, /* formline */
+ Perl_ck_fun, /* ord */
+ Perl_ck_fun, /* chr */
+ Perl_ck_fun, /* crypt */
+ Perl_ck_fun, /* ucfirst */
+ Perl_ck_fun, /* lcfirst */
+ Perl_ck_fun, /* uc */
+ Perl_ck_fun, /* lc */
+ Perl_ck_fun, /* quotemeta */
+ Perl_ck_rvconst, /* rv2av */
+ Perl_ck_null, /* aelemfast */
+ Perl_ck_null, /* aelemfast_lex */
+ Perl_ck_null, /* aelem */
+ Perl_ck_null, /* aslice */
+ Perl_ck_null, /* kvaslice */
+ Perl_ck_each, /* aeach */
+ Perl_ck_each, /* akeys */
+ Perl_ck_each, /* avalues */
+ Perl_ck_each, /* each */
+ Perl_ck_each, /* values */
+ Perl_ck_each, /* keys */
+ Perl_ck_delete, /* delete */
+ Perl_ck_exists, /* exists */
+ Perl_ck_rvconst, /* rv2hv */
+ Perl_ck_null, /* helem */
+ Perl_ck_null, /* hslice */
+ Perl_ck_null, /* kvhslice */
+ Perl_ck_null, /* multideref */
+ Perl_ck_fun, /* unpack */
+ Perl_ck_fun, /* pack */
+ Perl_ck_split, /* split */
+ Perl_ck_join, /* join */
+ Perl_ck_null, /* list */
+ Perl_ck_null, /* lslice */
+ Perl_ck_fun, /* anonlist */
+ Perl_ck_fun, /* anonhash */
+ Perl_ck_fun, /* splice */
+ Perl_ck_fun, /* push */
+ Perl_ck_shift, /* pop */
+ Perl_ck_shift, /* shift */
+ Perl_ck_fun, /* unshift */
+ Perl_ck_sort, /* sort */
+ Perl_ck_fun, /* reverse */
+ Perl_ck_grep, /* grepstart */
+ Perl_ck_null, /* grepwhile */
+ Perl_ck_grep, /* mapstart */
+ Perl_ck_null, /* mapwhile */
+ Perl_ck_null, /* range */
+ Perl_ck_null, /* flip */
+ Perl_ck_null, /* flop */
+ Perl_ck_null, /* and */
+ Perl_ck_null, /* or */
+ Perl_ck_null, /* xor */
+ Perl_ck_null, /* dor */
+ Perl_ck_null, /* cond_expr */
+ Perl_ck_null, /* andassign */
+ Perl_ck_null, /* orassign */
+ Perl_ck_null, /* dorassign */
+ Perl_ck_method, /* method */
+ Perl_ck_subr, /* entersub */
+ Perl_ck_null, /* leavesub */
+ Perl_ck_null, /* leavesublv */
+ Perl_ck_fun, /* caller */
+ Perl_ck_fun, /* warn */
+ Perl_ck_fun, /* die */
+ Perl_ck_fun, /* reset */
+ Perl_ck_null, /* lineseq */
+ Perl_ck_null, /* nextstate */
+ Perl_ck_null, /* dbstate */
+ Perl_ck_null, /* unstack */
+ Perl_ck_null, /* enter */
+ Perl_ck_null, /* leave */
+ Perl_ck_null, /* scope */
+ Perl_ck_null, /* enteriter */
+ Perl_ck_null, /* iter */
+ Perl_ck_null, /* enterloop */
+ Perl_ck_null, /* leaveloop */
+ Perl_ck_return, /* return */
+ Perl_ck_null, /* last */
+ Perl_ck_null, /* next */
+ Perl_ck_null, /* redo */
+ Perl_ck_null, /* dump */
+ Perl_ck_null, /* goto */
+ Perl_ck_fun, /* exit */
+ Perl_ck_null, /* method_named */
+ Perl_ck_null, /* method_super */
+ Perl_ck_null, /* method_redir */
+ Perl_ck_null, /* method_redir_super */
+ Perl_ck_null, /* entergiven */
+ Perl_ck_null, /* leavegiven */
+ Perl_ck_null, /* enterwhen */
+ Perl_ck_null, /* leavewhen */
+ Perl_ck_null, /* break */
+ Perl_ck_null, /* continue */
+ Perl_ck_open, /* open */
+ Perl_ck_fun, /* close */
+ Perl_ck_fun, /* pipe_op */
+ Perl_ck_fun, /* fileno */
+ Perl_ck_fun, /* umask */
+ Perl_ck_fun, /* binmode */
+ Perl_ck_fun, /* tie */
+ Perl_ck_fun, /* untie */
+ Perl_ck_fun, /* tied */
+ Perl_ck_fun, /* dbmopen */
+ Perl_ck_fun, /* dbmclose */
+ Perl_ck_select, /* sselect */
+ Perl_ck_select, /* select */
+ Perl_ck_eof, /* getc */
+ Perl_ck_fun, /* read */
+ Perl_ck_fun, /* enterwrite */
+ Perl_ck_null, /* leavewrite */
+ Perl_ck_listiob, /* prtf */
+ Perl_ck_listiob, /* print */
+ Perl_ck_listiob, /* say */
+ Perl_ck_fun, /* sysopen */
+ Perl_ck_fun, /* sysseek */
+ Perl_ck_fun, /* sysread */
+ Perl_ck_fun, /* syswrite */
+ Perl_ck_eof, /* eof */
+ Perl_ck_tell, /* tell */
+ Perl_ck_tell, /* seek */
+ Perl_ck_trunc, /* truncate */
+ Perl_ck_fun, /* fcntl */
+ Perl_ck_fun, /* ioctl */
+ Perl_ck_fun, /* flock */
+ Perl_ck_fun, /* send */
+ Perl_ck_fun, /* recv */
+ Perl_ck_fun, /* socket */
+ Perl_ck_fun, /* sockpair */
+ Perl_ck_fun, /* bind */
+ Perl_ck_fun, /* connect */
+ Perl_ck_fun, /* listen */
+ Perl_ck_fun, /* accept */
+ Perl_ck_fun, /* shutdown */
+ Perl_ck_fun, /* gsockopt */
+ Perl_ck_fun, /* ssockopt */
+ Perl_ck_fun, /* getsockname */
+ Perl_ck_fun, /* getpeername */
+ Perl_ck_ftst, /* lstat */
+ Perl_ck_ftst, /* stat */
+ Perl_ck_ftst, /* ftrread */
+ Perl_ck_ftst, /* ftrwrite */
+ Perl_ck_ftst, /* ftrexec */
+ Perl_ck_ftst, /* fteread */
+ Perl_ck_ftst, /* ftewrite */
+ Perl_ck_ftst, /* fteexec */
+ Perl_ck_ftst, /* ftis */
+ Perl_ck_ftst, /* ftsize */
+ Perl_ck_ftst, /* ftmtime */
+ Perl_ck_ftst, /* ftatime */
+ Perl_ck_ftst, /* ftctime */
+ Perl_ck_ftst, /* ftrowned */
+ Perl_ck_ftst, /* fteowned */
+ Perl_ck_ftst, /* ftzero */
+ Perl_ck_ftst, /* ftsock */
+ Perl_ck_ftst, /* ftchr */
+ Perl_ck_ftst, /* ftblk */
+ Perl_ck_ftst, /* ftfile */
+ Perl_ck_ftst, /* ftdir */
+ Perl_ck_ftst, /* ftpipe */
+ Perl_ck_ftst, /* ftsuid */
+ Perl_ck_ftst, /* ftsgid */
+ Perl_ck_ftst, /* ftsvtx */
+ Perl_ck_ftst, /* ftlink */
+ Perl_ck_ftst, /* fttty */
+ Perl_ck_ftst, /* fttext */
+ Perl_ck_ftst, /* ftbinary */
+ Perl_ck_trunc, /* chdir */
+ Perl_ck_fun, /* chown */
+ Perl_ck_fun, /* chroot */
+ Perl_ck_fun, /* unlink */
+ Perl_ck_fun, /* chmod */
+ Perl_ck_fun, /* utime */
+ Perl_ck_fun, /* rename */
+ Perl_ck_fun, /* link */
+ Perl_ck_fun, /* symlink */
+ Perl_ck_fun, /* readlink */
+ Perl_ck_fun, /* mkdir */
+ Perl_ck_fun, /* rmdir */
+ Perl_ck_fun, /* open_dir */
+ Perl_ck_fun, /* readdir */
+ Perl_ck_fun, /* telldir */
+ Perl_ck_fun, /* seekdir */
+ Perl_ck_fun, /* rewinddir */
+ Perl_ck_fun, /* closedir */
+ Perl_ck_null, /* fork */
+ Perl_ck_null, /* wait */
+ Perl_ck_fun, /* waitpid */
+ Perl_ck_exec, /* system */
+ Perl_ck_exec, /* exec */
+ Perl_ck_fun, /* kill */
+ Perl_ck_null, /* getppid */
+ Perl_ck_fun, /* getpgrp */
+ Perl_ck_fun, /* setpgrp */
+ Perl_ck_fun, /* getpriority */
+ Perl_ck_fun, /* setpriority */
+ Perl_ck_null, /* time */
+ Perl_ck_null, /* tms */
+ Perl_ck_fun, /* localtime */
+ Perl_ck_fun, /* gmtime */
+ Perl_ck_fun, /* alarm */
+ Perl_ck_fun, /* sleep */
+ Perl_ck_fun, /* shmget */
+ Perl_ck_fun, /* shmctl */
+ Perl_ck_fun, /* shmread */
+ Perl_ck_fun, /* shmwrite */
+ Perl_ck_fun, /* msgget */
+ Perl_ck_fun, /* msgctl */
+ Perl_ck_fun, /* msgsnd */
+ Perl_ck_fun, /* msgrcv */
+ Perl_ck_fun, /* semop */
+ Perl_ck_fun, /* semget */
+ Perl_ck_fun, /* semctl */
+ Perl_ck_require, /* require */
+ Perl_ck_fun, /* dofile */
+ Perl_ck_svconst, /* hintseval */
+ Perl_ck_eval, /* entereval */
+ Perl_ck_null, /* leaveeval */
+ Perl_ck_eval, /* entertry */
+ Perl_ck_null, /* leavetry */
+ Perl_ck_fun, /* ghbyname */
+ Perl_ck_fun, /* ghbyaddr */
+ Perl_ck_null, /* ghostent */
+ Perl_ck_fun, /* gnbyname */
+ Perl_ck_fun, /* gnbyaddr */
+ Perl_ck_null, /* gnetent */
+ Perl_ck_fun, /* gpbyname */
+ Perl_ck_fun, /* gpbynumber */
+ Perl_ck_null, /* gprotoent */
+ Perl_ck_fun, /* gsbyname */
+ Perl_ck_fun, /* gsbyport */
+ Perl_ck_null, /* gservent */
+ Perl_ck_fun, /* shostent */
+ Perl_ck_fun, /* snetent */
+ Perl_ck_fun, /* sprotoent */
+ Perl_ck_fun, /* sservent */
+ Perl_ck_null, /* ehostent */
+ Perl_ck_null, /* enetent */
+ Perl_ck_null, /* eprotoent */
+ Perl_ck_null, /* eservent */
+ Perl_ck_fun, /* gpwnam */
+ Perl_ck_fun, /* gpwuid */
+ Perl_ck_null, /* gpwent */
+ Perl_ck_null, /* spwent */
+ Perl_ck_null, /* epwent */
+ Perl_ck_fun, /* ggrnam */
+ Perl_ck_fun, /* ggrgid */
+ Perl_ck_null, /* ggrent */
+ Perl_ck_null, /* sgrent */
+ Perl_ck_null, /* egrent */
+ Perl_ck_null, /* getlogin */
+ Perl_ck_fun, /* syscall */
+ Perl_ck_rfun, /* lock */
+ Perl_ck_null, /* once */
+ Perl_ck_null, /* custom */
+ Perl_ck_null, /* coreargs */
+ Perl_ck_null, /* runcv */
+ Perl_ck_fun, /* fc */
+ Perl_ck_null, /* padcv */
+ Perl_ck_null, /* introcv */
+ Perl_ck_null, /* clonecv */
+ Perl_ck_null, /* padrange */
+ Perl_ck_refassign, /* refassign */
+ Perl_ck_null, /* lvref */
+ Perl_ck_null, /* lvrefslice */
+ Perl_ck_null, /* lvavref */
+ Perl_ck_null, /* anonconst */
+}
+#endif
+#ifdef PERL_CHECK_INITED
+;
+#endif /* #ifdef PERL_CHECK_INITED */
+
+#ifndef PERL_GLOBAL_STRUCT_INIT
#ifndef DOINIT
-EXT U32 PL_opargs[];
+EXTCONST U32 PL_opargs[];
#else
-EXT U32 PL_opargs[] = {
+EXTCONST U32 PL_opargs[] = {
0x00000000, /* null */
0x00000000, /* stub */
- 0x00003604, /* scalar */
+ 0x00001b04, /* scalar */
0x00000004, /* pushmark */
- 0x00000014, /* wantarray */
- 0x00000c04, /* const */
- 0x00000c44, /* gvsv */
- 0x00000c44, /* gv */
- 0x00022440, /* gelem */
+ 0x00000004, /* wantarray */
+ 0x00000604, /* const */
+ 0x00000644, /* gvsv */
+ 0x00000644, /* gv */
+ 0x00011244, /* gelem */
0x00000044, /* padsv */
0x00000040, /* padav */
0x00000040, /* padhv */
0x00000040, /* padany */
- 0x00000a40, /* pushre */
- 0x00000244, /* rv2gv */
- 0x00000244, /* rv2sv */
- 0x00000214, /* av2arylen */
- 0x00000240, /* rv2cv */
- 0x00000c00, /* anoncode */
- 0x00003604, /* prototype */
- 0x00004201, /* refgen */
- 0x00002206, /* srefgen */
- 0x0001368c, /* ref */
- 0x00122804, /* bless */
- 0x00001608, /* backtick */
- 0x00012808, /* glob */
- 0x0001d608, /* readline */
- 0x00000c08, /* rcatline */
- 0x00002204, /* regcmaybe */
- 0x00002204, /* regcreset */
- 0x00002604, /* regcomp */
- 0x00000a40, /* match */
- 0x00000a04, /* qr */
- 0x00002a54, /* subst */
- 0x00000654, /* substcont */
- 0x00003014, /* trans */
+ 0x00000540, /* pushre */
+ 0x00000144, /* rv2gv */
+ 0x00000144, /* rv2sv */
+ 0x00000104, /* av2arylen */
+ 0x00000140, /* rv2cv */
+ 0x00000604, /* anoncode */
+ 0x00009b84, /* prototype */
+ 0x00002101, /* refgen */
+ 0x00001106, /* srefgen */
+ 0x00009b8c, /* ref */
+ 0x00091404, /* bless */
+ 0x00009b88, /* backtick */
+ 0x00009408, /* glob */
+ 0x0000eb08, /* readline */
+ 0x00000608, /* rcatline */
+ 0x00001104, /* regcmaybe */
+ 0x00001104, /* regcreset */
+ 0x00001304, /* regcomp */
+ 0x00000500, /* match */
+ 0x00000504, /* qr */
+ 0x00001504, /* subst */
+ 0x00000304, /* substcont */
+ 0x00001804, /* trans */
+ 0x00001804, /* transr */
0x00000004, /* sassign */
- 0x00044408, /* aassign */
- 0x0000560d, /* chop */
- 0x0001368c, /* schop */
- 0x0000570d, /* chomp */
- 0x0001378c, /* schomp */
- 0x00013694, /* defined */
- 0x00013604, /* undef */
- 0x00013684, /* study */
- 0x0001368c, /* pos */
- 0x00002264, /* preinc */
- 0x00002254, /* i_preinc */
- 0x00002264, /* predec */
- 0x00002254, /* i_predec */
- 0x0000226c, /* postinc */
- 0x0000235c, /* i_postinc */
- 0x0000226c, /* postdec */
- 0x0000235c, /* i_postdec */
- 0x0002250e, /* pow */
- 0x0002252e, /* multiply */
- 0x0002251e, /* i_multiply */
- 0x0002252e, /* divide */
- 0x0002251e, /* i_divide */
- 0x0002253e, /* modulo */
- 0x0002251e, /* i_modulo */
- 0x00024409, /* repeat */
- 0x0002252e, /* add */
- 0x0002251e, /* i_add */
- 0x0002252e, /* subtract */
- 0x0002251e, /* i_subtract */
- 0x0002250e, /* concat */
- 0x0000290e, /* stringify */
- 0x0002250e, /* left_shift */
- 0x0002250e, /* right_shift */
- 0x00022436, /* lt */
- 0x00022416, /* i_lt */
- 0x00022436, /* gt */
- 0x00022416, /* i_gt */
- 0x00022436, /* le */
- 0x00022416, /* i_le */
- 0x00022436, /* ge */
- 0x00022416, /* i_ge */
- 0x00022436, /* eq */
- 0x00022416, /* i_eq */
- 0x00022436, /* ne */
- 0x00022416, /* i_ne */
- 0x0002243e, /* ncmp */
- 0x0002241e, /* i_ncmp */
- 0x00022416, /* slt */
- 0x00022416, /* sgt */
- 0x00022416, /* sle */
- 0x00022416, /* sge */
- 0x00022416, /* seq */
- 0x00022416, /* sne */
- 0x0002241e, /* scmp */
- 0x0002240e, /* bit_and */
- 0x0002240e, /* bit_xor */
- 0x0002240e, /* bit_or */
- 0x0000222e, /* negate */
- 0x0000231e, /* i_negate */
- 0x00002216, /* not */
- 0x0000220e, /* complement */
- 0x0002290e, /* atan2 */
- 0x0001378e, /* sin */
- 0x0001378e, /* cos */
- 0x0001370c, /* rand */
- 0x00013604, /* srand */
- 0x0001378e, /* exp */
- 0x0001378e, /* log */
- 0x0001378e, /* sqrt */
- 0x0001378e, /* int */
- 0x0001378e, /* hex */
- 0x0001378e, /* oct */
- 0x0001378e, /* abs */
- 0x0001379c, /* length */
- 0x1322280c, /* substr */
- 0x0022281c, /* vec */
- 0x0122291c, /* index */
- 0x0122291c, /* rindex */
- 0x0004280f, /* sprintf */
- 0x00042805, /* formline */
- 0x0001379e, /* ord */
- 0x0001378e, /* chr */
- 0x0002290e, /* crypt */
- 0x0001368e, /* ucfirst */
- 0x0001368e, /* lcfirst */
- 0x0001368e, /* uc */
- 0x0001368e, /* lc */
- 0x0001368e, /* quotemeta */
- 0x00000248, /* rv2av */
- 0x00026c04, /* aelemfast */
- 0x00026404, /* aelem */
- 0x00046801, /* aslice */
- 0x00009600, /* each */
- 0x00009608, /* values */
- 0x00009608, /* keys */
- 0x00003600, /* delete */
- 0x00003614, /* exists */
- 0x00000248, /* rv2hv */
- 0x00028404, /* helem */
- 0x00048801, /* hslice */
- 0x00122800, /* unpack */
- 0x0004280d, /* pack */
- 0x00222808, /* split */
- 0x0004280d, /* join */
- 0x00004801, /* list */
- 0x00448400, /* lslice */
- 0x00004805, /* anonlist */
- 0x00004805, /* anonhash */
- 0x05326801, /* splice */
- 0x0004691d, /* push */
- 0x00007604, /* pop */
- 0x00007604, /* shift */
- 0x0004691d, /* unshift */
- 0x0005a801, /* sort */
- 0x00004809, /* reverse */
- 0x0004a841, /* grepstart */
- 0x00000648, /* grepwhile */
- 0x0004a841, /* mapstart */
- 0x00000648, /* mapwhile */
- 0x00022600, /* range */
- 0x00022200, /* flip */
- 0x00000200, /* flop */
- 0x00000600, /* and */
- 0x00000600, /* or */
- 0x00022406, /* xor */
- 0x00000640, /* cond_expr */
- 0x00000604, /* andassign */
- 0x00000604, /* orassign */
- 0x00000240, /* method */
- 0x00004249, /* entersub */
- 0x00000200, /* leavesub */
- 0x00000200, /* leavesublv */
- 0x00013608, /* caller */
- 0x0000481d, /* warn */
- 0x0000485d, /* die */
- 0x00013614, /* reset */
- 0x00000800, /* lineseq */
- 0x00001404, /* nextstate */
- 0x00001404, /* dbstate */
+ 0x00022208, /* aassign */
+ 0x00002b0d, /* chop */
+ 0x00009b8c, /* schop */
+ 0x00002b1d, /* chomp */
+ 0x00009b9c, /* schomp */
+ 0x00009b84, /* defined */
+ 0x0000fb04, /* undef */
+ 0x00009b84, /* study */
+ 0x0000fb8c, /* pos */
+ 0x00001164, /* preinc */
+ 0x00001144, /* i_preinc */
+ 0x00001164, /* predec */
+ 0x00001144, /* i_predec */
+ 0x0000112c, /* postinc */
+ 0x0000110c, /* i_postinc */
+ 0x0000112c, /* postdec */
+ 0x0000110c, /* i_postdec */
+ 0x0001121e, /* pow */
+ 0x0001123e, /* multiply */
+ 0x0001121e, /* i_multiply */
+ 0x0001123e, /* divide */
+ 0x0001121e, /* i_divide */
+ 0x0001123e, /* modulo */
+ 0x0001121e, /* i_modulo */
+ 0x0001220b, /* repeat */
+ 0x0001123e, /* add */
+ 0x0001121e, /* i_add */
+ 0x0001123e, /* subtract */
+ 0x0001121e, /* i_subtract */
+ 0x0001121e, /* concat */
+ 0x0000141e, /* stringify */
+ 0x0001121e, /* left_shift */
+ 0x0001121e, /* right_shift */
+ 0x00011226, /* lt */
+ 0x00011206, /* i_lt */
+ 0x00011226, /* gt */
+ 0x00011206, /* i_gt */
+ 0x00011226, /* le */
+ 0x00011206, /* i_le */
+ 0x00011226, /* ge */
+ 0x00011206, /* i_ge */
+ 0x00011226, /* eq */
+ 0x00011206, /* i_eq */
+ 0x00011226, /* ne */
+ 0x00011206, /* i_ne */
+ 0x0001122e, /* ncmp */
+ 0x0001120e, /* i_ncmp */
+ 0x00011206, /* slt */
+ 0x00011206, /* sgt */
+ 0x00011206, /* sle */
+ 0x00011206, /* sge */
+ 0x00011206, /* seq */
+ 0x00011206, /* sne */
+ 0x0001120e, /* scmp */
+ 0x0001120e, /* bit_and */
+ 0x0001120e, /* bit_xor */
+ 0x0001120e, /* bit_or */
+ 0x0001121e, /* nbit_and */
+ 0x0001121e, /* nbit_xor */
+ 0x0001121e, /* nbit_or */
+ 0x0001120e, /* sbit_and */
+ 0x0001120e, /* sbit_xor */
+ 0x0001120e, /* sbit_or */
+ 0x0000112e, /* negate */
+ 0x0000110e, /* i_negate */
+ 0x00001106, /* not */
+ 0x0000110e, /* complement */
+ 0x0000111e, /* ncomplement */
+ 0x0000111e, /* scomplement */
+ 0x00000204, /* smartmatch */
+ 0x0001141e, /* atan2 */
+ 0x00009b9e, /* sin */
+ 0x00009b9e, /* cos */
+ 0x00009b1c, /* rand */
+ 0x00009b1c, /* srand */
+ 0x00009b9e, /* exp */
+ 0x00009b9e, /* log */
+ 0x00009b9e, /* sqrt */
+ 0x00009b9e, /* int */
+ 0x00009b9e, /* hex */
+ 0x00009b9e, /* oct */
+ 0x00009b9e, /* abs */
+ 0x00009b9e, /* length */
+ 0x0991140c, /* substr */
+ 0x0011140c, /* vec */
+ 0x0091141c, /* index */
+ 0x0091141c, /* rindex */
+ 0x0002140f, /* sprintf */
+ 0x00021405, /* formline */
+ 0x00009b9e, /* ord */
+ 0x00009b9e, /* chr */
+ 0x0001141e, /* crypt */
+ 0x00009b8e, /* ucfirst */
+ 0x00009b8e, /* lcfirst */
+ 0x00009b8e, /* uc */
+ 0x00009b8e, /* lc */
+ 0x00009b8e, /* quotemeta */
+ 0x00000148, /* rv2av */
+ 0x00013644, /* aelemfast */
+ 0x00013040, /* aelemfast_lex */
+ 0x00013204, /* aelem */
+ 0x00023401, /* aslice */
+ 0x00023401, /* kvaslice */
+ 0x00003b40, /* aeach */
+ 0x00003b08, /* akeys */
+ 0x00003b48, /* avalues */
+ 0x00004b40, /* each */
+ 0x00004b48, /* values */
+ 0x00004b08, /* keys */
+ 0x00001b00, /* delete */
+ 0x00001b04, /* exists */
+ 0x00000140, /* rv2hv */
+ 0x00014204, /* helem */
+ 0x00024401, /* hslice */
+ 0x00024401, /* kvhslice */
+ 0x00000f44, /* multideref */
+ 0x00091480, /* unpack */
+ 0x0002140f, /* pack */
+ 0x00111408, /* split */
+ 0x0002140f, /* join */
+ 0x00002401, /* list */
+ 0x00224200, /* lslice */
+ 0x00002405, /* anonlist */
+ 0x00002405, /* anonhash */
+ 0x02993401, /* splice */
+ 0x0002341d, /* push */
+ 0x0000bb04, /* pop */
+ 0x0000bb04, /* shift */
+ 0x0002341d, /* unshift */
+ 0x0002d401, /* sort */
+ 0x00002409, /* reverse */
+ 0x00025401, /* grepstart */
+ 0x00000308, /* grepwhile */
+ 0x00025401, /* mapstart */
+ 0x00000308, /* mapwhile */
+ 0x00011300, /* range */
+ 0x00011100, /* flip */
+ 0x00000100, /* flop */
+ 0x00000300, /* and */
+ 0x00000300, /* or */
+ 0x00011206, /* xor */
+ 0x00000300, /* dor */
+ 0x00000300, /* cond_expr */
+ 0x00000304, /* andassign */
+ 0x00000304, /* orassign */
+ 0x00000304, /* dorassign */
+ 0x00000e40, /* method */
+ 0x00002141, /* entersub */
+ 0x00000100, /* leavesub */
+ 0x00000100, /* leavesublv */
+ 0x00009b08, /* caller */
+ 0x0000240d, /* warn */
+ 0x0000240d, /* die */
+ 0x00009b04, /* reset */
+ 0x00000400, /* lineseq */
+ 0x00000a04, /* nextstate */
+ 0x00000a04, /* dbstate */
0x00000004, /* unstack */
0x00000000, /* enter */
- 0x00000800, /* leave */
- 0x00000800, /* scope */
- 0x00001240, /* enteriter */
+ 0x00000400, /* leave */
+ 0x00000400, /* scope */
+ 0x00000940, /* enteriter */
0x00000000, /* iter */
- 0x00001240, /* enterloop */
- 0x00000400, /* leaveloop */
- 0x00004841, /* return */
- 0x00001a44, /* last */
- 0x00001a44, /* next */
- 0x00001a44, /* redo */
- 0x00001a44, /* dump */
- 0x00001a44, /* goto */
- 0x00013644, /* exit */
- 0x0052c81d, /* open */
- 0x0001d614, /* close */
- 0x000cc814, /* pipe_op */
- 0x0000d61c, /* fileno */
- 0x0001361c, /* umask */
- 0x0012c804, /* binmode */
- 0x0042e855, /* tie */
- 0x0000f614, /* untie */
- 0x0000f604, /* tied */
- 0x00228814, /* dbmopen */
- 0x00009614, /* dbmclose */
- 0x02222808, /* sselect */
- 0x0001c80c, /* select */
- 0x0001d60c, /* getc */
- 0x122ec81d, /* read */
- 0x0001d654, /* enterwrite */
- 0x00000200, /* leavewrite */
- 0x0005c815, /* prtf */
- 0x0005c815, /* print */
- 0x1222c804, /* sysopen */
- 0x0022c804, /* sysseek */
- 0x122ec81d, /* sysread */
- 0x1322c81d, /* syswrite */
- 0x1222c81d, /* send */
- 0x022ec81d, /* recv */
- 0x0001d614, /* eof */
- 0x0001d60c, /* tell */
- 0x0022c804, /* seek */
- 0x00022814, /* truncate */
- 0x0022c80c, /* fcntl */
- 0x0022c80c, /* ioctl */
- 0x0002c91c, /* flock */
- 0x0222c814, /* socket */
- 0x222cc814, /* sockpair */
- 0x0002c814, /* bind */
- 0x0002c814, /* connect */
- 0x0002c814, /* listen */
- 0x000cc81c, /* accept */
- 0x0002c81c, /* shutdown */
- 0x0022c814, /* gsockopt */
- 0x0222c814, /* ssockopt */
- 0x0000d614, /* getsockname */
- 0x0000d614, /* getpeername */
- 0x0000d880, /* lstat */
- 0x0000d880, /* stat */
- 0x0000d894, /* ftrread */
- 0x0000d894, /* ftrwrite */
- 0x0000d894, /* ftrexec */
- 0x0000d894, /* fteread */
- 0x0000d894, /* ftewrite */
- 0x0000d894, /* fteexec */
- 0x0000d894, /* ftis */
- 0x0000d894, /* fteowned */
- 0x0000d894, /* ftrowned */
- 0x0000d894, /* ftzero */
- 0x0000d89c, /* ftsize */
- 0x0000d88c, /* ftmtime */
- 0x0000d88c, /* ftatime */
- 0x0000d88c, /* ftctime */
- 0x0000d894, /* ftsock */
- 0x0000d894, /* ftchr */
- 0x0000d894, /* ftblk */
- 0x0000d894, /* ftfile */
- 0x0000d894, /* ftdir */
- 0x0000d894, /* ftpipe */
- 0x0000d894, /* ftlink */
- 0x0000d894, /* ftsuid */
- 0x0000d894, /* ftsgid */
- 0x0000d894, /* ftsvtx */
- 0x0000d814, /* fttty */
- 0x0000d894, /* fttext */
- 0x0000d894, /* ftbinary */
- 0x0001371c, /* chdir */
- 0x0000491d, /* chown */
- 0x0001379c, /* chroot */
- 0x0000499d, /* unlink */
- 0x0000491d, /* chmod */
- 0x0000491d, /* utime */
- 0x0002291c, /* rename */
- 0x0002291c, /* link */
- 0x0002291c, /* symlink */
- 0x0001368c, /* readlink */
- 0x0012291c, /* mkdir */
- 0x0001379c, /* rmdir */
- 0x0002c814, /* open_dir */
- 0x0000d600, /* readdir */
- 0x0000d60c, /* telldir */
- 0x0002c804, /* seekdir */
- 0x0000d604, /* rewinddir */
- 0x0000d614, /* closedir */
- 0x0000001c, /* fork */
- 0x0000011c, /* wait */
- 0x0002291c, /* waitpid */
- 0x0005291d, /* system */
- 0x0005295d, /* exec */
- 0x0000495d, /* kill */
- 0x0000011c, /* getppid */
- 0x0001371c, /* getpgrp */
- 0x0013291c, /* setpgrp */
- 0x0002291c, /* getpriority */
- 0x0022291c, /* setpriority */
- 0x0000011c, /* time */
+ 0x00000940, /* enterloop */
+ 0x00000200, /* leaveloop */
+ 0x00002401, /* return */
+ 0x00000d04, /* last */
+ 0x00000d04, /* next */
+ 0x00000d04, /* redo */
+ 0x00000d44, /* dump */
+ 0x00000d04, /* goto */
+ 0x00009b04, /* exit */
+ 0x00000e40, /* method_named */
+ 0x00000e40, /* method_super */
+ 0x00000e40, /* method_redir */
+ 0x00000e40, /* method_redir_super */
+ 0x00000340, /* entergiven */
+ 0x00000100, /* leavegiven */
+ 0x00000340, /* enterwhen */
+ 0x00000100, /* leavewhen */
+ 0x00000000, /* break */
+ 0x00000000, /* continue */
+ 0x0029640d, /* open */
+ 0x0000eb04, /* close */
+ 0x00066404, /* pipe_op */
+ 0x00006b0c, /* fileno */
+ 0x00009b0c, /* umask */
+ 0x00096404, /* binmode */
+ 0x00217445, /* tie */
+ 0x00007b04, /* untie */
+ 0x00007b44, /* tied */
+ 0x00114404, /* dbmopen */
+ 0x00004b04, /* dbmclose */
+ 0x01111408, /* sselect */
+ 0x0000e40c, /* select */
+ 0x0000eb0c, /* getc */
+ 0x0917640d, /* read */
+ 0x0000eb04, /* enterwrite */
+ 0x00000100, /* leavewrite */
+ 0x0002e405, /* prtf */
+ 0x0002e405, /* print */
+ 0x0002e405, /* say */
+ 0x09116404, /* sysopen */
+ 0x00116404, /* sysseek */
+ 0x0917640d, /* sysread */
+ 0x0991640d, /* syswrite */
+ 0x0000eb04, /* eof */
+ 0x0000eb0c, /* tell */
+ 0x00116404, /* seek */
+ 0x00011404, /* truncate */
+ 0x0011640c, /* fcntl */
+ 0x0011640c, /* ioctl */
+ 0x0001641c, /* flock */
+ 0x0911640d, /* send */
+ 0x0117640d, /* recv */
+ 0x01116404, /* socket */
+ 0x11166404, /* sockpair */
+ 0x00016404, /* bind */
+ 0x00016404, /* connect */
+ 0x00016404, /* listen */
+ 0x0006640c, /* accept */
+ 0x0001640c, /* shutdown */
+ 0x00116404, /* gsockopt */
+ 0x01116404, /* ssockopt */
+ 0x00006b04, /* getsockname */
+ 0x00006b04, /* getpeername */
+ 0x0000ec80, /* lstat */
+ 0x0000ec80, /* stat */
+ 0x00006c84, /* ftrread */
+ 0x00006c84, /* ftrwrite */
+ 0x00006c84, /* ftrexec */
+ 0x00006c84, /* fteread */
+ 0x00006c84, /* ftewrite */
+ 0x00006c84, /* fteexec */
+ 0x00006c84, /* ftis */
+ 0x00006c8c, /* ftsize */
+ 0x00006c8c, /* ftmtime */
+ 0x00006c8c, /* ftatime */
+ 0x00006c8c, /* ftctime */
+ 0x00006c84, /* ftrowned */
+ 0x00006c84, /* fteowned */
+ 0x00006c84, /* ftzero */
+ 0x00006c84, /* ftsock */
+ 0x00006c84, /* ftchr */
+ 0x00006c84, /* ftblk */
+ 0x00006c84, /* ftfile */
+ 0x00006c84, /* ftdir */
+ 0x00006c84, /* ftpipe */
+ 0x00006c84, /* ftsuid */
+ 0x00006c84, /* ftsgid */
+ 0x00006c84, /* ftsvtx */
+ 0x00006c84, /* ftlink */
+ 0x00006c04, /* fttty */
+ 0x00006c84, /* fttext */
+ 0x00006c84, /* ftbinary */
+ 0x00009b1c, /* chdir */
+ 0x0000241d, /* chown */
+ 0x00009b9c, /* chroot */
+ 0x0000249d, /* unlink */
+ 0x0000241d, /* chmod */
+ 0x0000241d, /* utime */
+ 0x0001141c, /* rename */
+ 0x0001141c, /* link */
+ 0x0001141c, /* symlink */
+ 0x00009b8c, /* readlink */
+ 0x0009949c, /* mkdir */
+ 0x00009b9c, /* rmdir */
+ 0x00016404, /* open_dir */
+ 0x00006b00, /* readdir */
+ 0x00006b0c, /* telldir */
+ 0x00016404, /* seekdir */
+ 0x00006b04, /* rewinddir */
+ 0x00006b04, /* closedir */
+ 0x0000000c, /* fork */
+ 0x0000001c, /* wait */
+ 0x0001141c, /* waitpid */
+ 0x0002941d, /* system */
+ 0x0002941d, /* exec */
+ 0x0000241d, /* kill */
+ 0x0000001c, /* getppid */
+ 0x00009b1c, /* getpgrp */
+ 0x0009941c, /* setpgrp */
+ 0x0001141c, /* getpriority */
+ 0x0011141c, /* setpriority */
+ 0x0000001c, /* time */
0x00000000, /* tms */
- 0x00013608, /* localtime */
- 0x00013608, /* gmtime */
- 0x0001369c, /* alarm */
- 0x0001371c, /* sleep */
- 0x0022281d, /* shmget */
- 0x0022281d, /* shmctl */
- 0x0222281d, /* shmread */
- 0x0222281d, /* shmwrite */
- 0x0002281d, /* msgget */
- 0x0022281d, /* msgctl */
- 0x0022281d, /* msgsnd */
- 0x2222281d, /* msgrcv */
- 0x0022281d, /* semget */
- 0x0222281d, /* semctl */
- 0x0002281d, /* semop */
- 0x000136c0, /* require */
- 0x00002240, /* dofile */
- 0x00003640, /* entereval */
- 0x00002200, /* leaveeval */
- 0x00000600, /* entertry */
- 0x00000800, /* leavetry */
- 0x00003600, /* ghbyname */
- 0x00022800, /* ghbyaddr */
+ 0x00009b08, /* localtime */
+ 0x00009b08, /* gmtime */
+ 0x00009b8c, /* alarm */
+ 0x00009b1c, /* sleep */
+ 0x0011140d, /* shmget */
+ 0x0011140d, /* shmctl */
+ 0x0111140d, /* shmread */
+ 0x0111140d, /* shmwrite */
+ 0x0001140d, /* msgget */
+ 0x0011140d, /* msgctl */
+ 0x0011140d, /* msgsnd */
+ 0x1111140d, /* msgrcv */
+ 0x0001140d, /* semop */
+ 0x0011140d, /* semget */
+ 0x0111140d, /* semctl */
+ 0x00009bc4, /* require */
+ 0x00001140, /* dofile */
+ 0x00000604, /* hintseval */
+ 0x00009bc0, /* entereval */
+ 0x00001100, /* leaveeval */
+ 0x00000340, /* entertry */
+ 0x00000400, /* leavetry */
+ 0x00001b00, /* ghbyname */
+ 0x00011400, /* ghbyaddr */
0x00000000, /* ghostent */
- 0x00003600, /* gnbyname */
- 0x00022800, /* gnbyaddr */
+ 0x00001b00, /* gnbyname */
+ 0x00011400, /* gnbyaddr */
0x00000000, /* gnetent */
- 0x00003600, /* gpbyname */
- 0x00002800, /* gpbynumber */
+ 0x00001b00, /* gpbyname */
+ 0x00001400, /* gpbynumber */
0x00000000, /* gprotoent */
- 0x00022800, /* gsbyname */
- 0x00022800, /* gsbyport */
+ 0x00011400, /* gsbyname */
+ 0x00011400, /* gsbyport */
0x00000000, /* gservent */
- 0x00003614, /* shostent */
- 0x00003614, /* snetent */
- 0x00003614, /* sprotoent */
- 0x00003614, /* sservent */
- 0x00000014, /* ehostent */
- 0x00000014, /* enetent */
- 0x00000014, /* eprotoent */
- 0x00000014, /* eservent */
- 0x00003600, /* gpwnam */
- 0x00003600, /* gpwuid */
+ 0x00001b04, /* shostent */
+ 0x00001b04, /* snetent */
+ 0x00001b04, /* sprotoent */
+ 0x00001b04, /* sservent */
+ 0x00000004, /* ehostent */
+ 0x00000004, /* enetent */
+ 0x00000004, /* eprotoent */
+ 0x00000004, /* eservent */
+ 0x00001b00, /* gpwnam */
+ 0x00001b00, /* gpwuid */
0x00000000, /* gpwent */
- 0x00000014, /* spwent */
- 0x00000014, /* epwent */
- 0x00003600, /* ggrnam */
- 0x00003600, /* ggrgid */
+ 0x00000004, /* spwent */
+ 0x00000004, /* epwent */
+ 0x00001b00, /* ggrnam */
+ 0x00001b00, /* ggrgid */
0x00000000, /* ggrent */
- 0x00000014, /* sgrent */
- 0x00000014, /* egrent */
+ 0x00000004, /* sgrent */
+ 0x00000004, /* egrent */
0x0000000c, /* getlogin */
- 0x0004281d, /* syscall */
- 0x0000f604, /* lock */
- 0x00000044, /* threadsv */
- 0x00001404, /* setstate */
- 0x00000c40, /* method_named */
- 0x00000600, /* dor */
- 0x00000604, /* dorassign */
+ 0x0002140d, /* syscall */
+ 0x00007b04, /* lock */
+ 0x00000300, /* once */
0x00000000, /* custom */
+ 0x00000600, /* coreargs */
+ 0x00000004, /* runcv */
+ 0x00009b8e, /* fc */
+ 0x00000040, /* padcv */
+ 0x00000040, /* introcv */
+ 0x00000040, /* clonecv */
+ 0x00000040, /* padrange */
+ 0x00000244, /* refassign */
+ 0x00000b40, /* lvref */
+ 0x00000440, /* lvrefslice */
+ 0x00000b40, /* lvavref */
+ 0x00000144, /* anonconst */
};
#endif
+#endif /* !PERL_GLOBAL_STRUCT_INIT */
+
END_EXTERN_C
+
+
+#define OPpLVREF_SV 0x00
+#define OPpARG1_MASK 0x01
+#define OPpCOREARGS_DEREF1 0x01
+#define OPpENTERSUB_INARGS 0x01
+#define OPpSORT_NUMERIC 0x01
+#define OPpTRANS_FROM_UTF 0x01
+#define OPpCONST_NOVER 0x02
+#define OPpCOREARGS_DEREF2 0x02
+#define OPpEVAL_HAS_HH 0x02
+#define OPpFT_ACCESS 0x02
+#define OPpHINT_STRICT_REFS 0x02
+#define OPpSORT_INTEGER 0x02
+#define OPpTRANS_TO_UTF 0x02
+#define OPpARG2_MASK 0x03
+#define OPpCONST_SHORTCIRCUIT 0x04
+#define OPpDONT_INIT_GV 0x04
+#define OPpENTERSUB_HASTARG 0x04
+#define OPpEVAL_UNICODE 0x04
+#define OPpFT_STACKED 0x04
+#define OPpITER_REVERSED 0x04
+#define OPpLVREF_ELEM 0x04
+#define OPpSLICEWARNING 0x04
+#define OPpSORT_REVERSE 0x04
+#define OPpTRANS_IDENTICAL 0x04
+#define OPpARG3_MASK 0x07
+#define OPpPADRANGE_COUNTSHIFT 0x07
+#define OPpCONST_STRICT 0x08
+#define OPpENTERSUB_AMPER 0x08
+#define OPpEVAL_BYTES 0x08
+#define OPpFT_STACKING 0x08
+#define OPpITER_DEF 0x08
+#define OPpLVREF_ITER 0x08
+#define OPpMAYBE_LVSUB 0x08
+#define OPpREVERSE_INPLACE 0x08
+#define OPpSORT_INPLACE 0x08
+#define OPpTRANS_SQUASH 0x08
+#define OPpARG4_MASK 0x0f
+#define OPpASSIGN_COMMON_AGG 0x10
+#define OPpCONST_ENTERED 0x10
+#define OPpDEREF_AV 0x10
+#define OPpEVAL_COPHH 0x10
+#define OPpFT_AFTER_t 0x10
+#define OPpLVREF_AV 0x10
+#define OPpMAYBE_TRUEBOOL 0x10
+#define OPpMULTIDEREF_EXISTS 0x10
+#define OPpOPEN_IN_RAW 0x10
+#define OPpSORT_DESCEND 0x10
+#define OPpSUBSTR_REPL_FIRST 0x10
+#define OPpTARGET_MY 0x10
+#define OPpASSIGN_COMMON_RC1 0x20
+#define OPpDEREF_HV 0x20
+#define OPpEARLY_CV 0x20
+#define OPpEVAL_RE_REPARSING 0x20
+#define OPpHUSH_VMSISH 0x20
+#define OPpLVREF_HV 0x20
+#define OPpMAY_RETURN_CONSTANT 0x20
+#define OPpMULTIDEREF_DELETE 0x20
+#define OPpOPEN_IN_CRLF 0x20
+#define OPpSORT_QSORT 0x20
+#define OPpTRANS_COMPLEMENT 0x20
+#define OPpTRUEBOOL 0x20
+#define OPpDEREF 0x30
+#define OPpDEREF_SV 0x30
+#define OPpLVREF_CV 0x30
+#define OPpLVREF_TYPE 0x30
+#define OPpALLOW_FAKE 0x40
+#define OPpASSIGN_BACKWARDS 0x40
+#define OPpASSIGN_COMMON_SCALAR 0x40
+#define OPpCONST_BARE 0x40
+#define OPpCOREARGS_SCALARMOD 0x40
+#define OPpENTERSUB_DB 0x40
+#define OPpEXISTS_SUB 0x40
+#define OPpFLIP_LINENUM 0x40
+#define OPpLIST_GUESSED 0x40
+#define OPpLVAL_DEFER 0x40
+#define OPpOPEN_OUT_RAW 0x40
+#define OPpOUR_INTRO 0x40
+#define OPpPAD_STATE 0x40
+#define OPpREFCOUNTED 0x40
+#define OPpREPEAT_DOLIST 0x40
+#define OPpRUNTIME 0x40
+#define OPpSLICE 0x40
+#define OPpSORT_STABLE 0x40
+#define OPpTRANS_GROWS 0x40
+#define OPpPADRANGE_COUNTMASK 0x7f
+#define OPpASSIGN_CV_TO_GV 0x80
+#define OPpCOREARGS_PUSHMARK 0x80
+#define OPpENTERSUB_NOPAREN 0x80
+#define OPpLVALUE 0x80
+#define OPpLVAL_INTRO 0x80
+#define OPpOFFBYONE 0x80
+#define OPpOPEN_OUT_CRLF 0x80
+#define OPpPV_IS_UTF8 0x80
+#define OPpSPLIT_IMPLIM 0x80
+#define OPpTRANS_DELETE 0x80
+START_EXTERN_C
+
+#ifndef PERL_GLOBAL_STRUCT_INIT
+
+# ifndef DOINIT
+
+/* data about the flags in op_private */
+
+EXTCONST I16 PL_op_private_bitdef_ix[];
+EXTCONST U16 PL_op_private_bitdefs[];
+EXTCONST char PL_op_private_labels[];
+EXTCONST I16 PL_op_private_bitfields[];
+EXTCONST U8 PL_op_private_valid[];
+
+# else
+
+
+/* PL_op_private_labels[]: the short descriptions of private flags.
+ * All labels are concatenated into a single char array
+ * (separated by \0's) for compactness.
+ */
+
+EXTCONST char PL_op_private_labels[] = {
+ '$','M','O','D','\0',
+ '+','1','\0',
+ '-','\0',
+ '<','U','T','F','\0',
+ '>','U','T','F','\0',
+ 'A','M','P','E','R','\0',
+ 'A','V','\0',
+ 'B','A','R','E','\0',
+ 'B','K','W','A','R','D','\0',
+ 'B','O','O','L','\0',
+ 'B','O','O','L','?','\0',
+ 'B','Y','T','E','S','\0',
+ 'C','O','M','P','L','\0',
+ 'C','O','M','_','A','G','G','\0',
+ 'C','O','M','_','R','C','1','\0',
+ 'C','O','M','_','S','C','A','L','A','R','\0',
+ 'C','O','N','S','T','\0',
+ 'C','O','P','H','H','\0',
+ 'C','V','\0',
+ 'C','V','2','G','V','\0',
+ 'D','B','G','\0',
+ 'D','E','F','\0',
+ 'D','E','L','\0',
+ 'D','E','L','E','T','E','\0',
+ 'D','E','R','E','F','1','\0',
+ 'D','E','R','E','F','2','\0',
+ 'D','E','S','C','\0',
+ 'D','O','L','I','S','T','\0',
+ 'D','R','E','F','A','V','\0',
+ 'D','R','E','F','H','V','\0',
+ 'D','R','E','F','S','V','\0',
+ 'E','A','R','L','Y','C','V','\0',
+ 'E','L','E','M','\0',
+ 'E','N','T','E','R','E','D','\0',
+ 'E','X','I','S','T','S','\0',
+ 'F','A','K','E','\0',
+ 'F','T','A','C','C','E','S','S','\0',
+ 'F','T','A','F','T','E','R','t','\0',
+ 'F','T','S','T','A','C','K','E','D','\0',
+ 'F','T','S','T','A','C','K','I','N','G','\0',
+ 'G','R','O','W','S','\0',
+ 'G','U','E','S','S','E','D','\0',
+ 'H','A','S','_','H','H','\0',
+ 'H','U','S','H','\0',
+ 'H','V','\0',
+ 'I','D','E','N','T','\0',
+ 'I','M','P','L','I','M','\0',
+ 'I','N','A','R','G','S','\0',
+ 'I','N','B','I','N','\0',
+ 'I','N','C','R','\0',
+ 'I','N','P','L','A','C','E','\0',
+ 'I','N','T','\0',
+ 'I','T','E','R','\0',
+ 'L','I','N','E','N','U','M','\0',
+ 'L','V','\0',
+ 'L','V','D','E','F','E','R','\0',
+ 'L','V','I','N','T','R','O','\0',
+ 'L','V','S','U','B','\0',
+ 'M','A','R','K','\0',
+ 'N','O','(',')','\0',
+ 'N','O','I','N','I','T','\0',
+ 'N','O','V','E','R','\0',
+ 'N','U','M','\0',
+ 'O','U','R','I','N','T','R','\0',
+ 'O','U','T','B','I','N','\0',
+ 'O','U','T','C','R','\0',
+ 'Q','S','O','R','T','\0',
+ 'R','E','F','C','\0',
+ 'R','E','P','A','R','S','E','\0',
+ 'R','E','P','L','1','S','T','\0',
+ 'R','E','V','\0',
+ 'R','E','V','E','R','S','E','D','\0',
+ 'R','T','I','M','E','\0',
+ 'S','H','O','R','T','\0',
+ 'S','L','I','C','E','\0',
+ 'S','L','I','C','E','W','A','R','N','\0',
+ 'S','Q','U','A','S','H','\0',
+ 'S','T','A','B','L','E','\0',
+ 'S','T','A','T','E','\0',
+ 'S','T','R','I','C','T','\0',
+ 'S','U','B','\0',
+ 'S','V','\0',
+ 'T','A','R','G','\0',
+ 'T','A','R','G','M','Y','\0',
+ 'U','N','I','\0',
+ 'U','T','F','\0',
+
+};
+
+
+
+/* PL_op_private_bitfields[]: details about each bit field type.
+ * Each definition consists of the following list of words:
+ * bitmin
+ * label (index into PL_op_private_labels[]; -1 if no label)
+ * repeat for each enum entry (if any):
+ * enum value
+ * enum label (index into PL_op_private_labels[])
+ * -1
+ */
+
+EXTCONST I16 PL_op_private_bitfields[] = {
+ 0, 8, -1,
+ 0, 8, -1,
+ 0, 8, -1,
+ 0, 8, -1,
+ 0, 8, -1,
+ 0, 8, -1,
+ 4, -1, 1, 157, 2, 164, 3, 171, -1,
+ 4, -1, 0, 507, 1, 26, 2, 276, 3, 103, -1,
+
+};
+
+
+/* PL_op_private_bitdef_ix[]: map an op number to a starting position
+ * in PL_op_private_bitdefs. If -1, the op has no bits defined */
+
+EXTCONST I16 PL_op_private_bitdef_ix[] = {
+ -1, /* null */
+ -1, /* stub */
+ 0, /* scalar */
+ 1, /* pushmark */
+ 3, /* wantarray */
+ 4, /* const */
+ 9, /* gvsv */
+ 11, /* gv */
+ 12, /* gelem */
+ 13, /* padsv */
+ 16, /* padav */
+ 20, /* padhv */
+ -1, /* padany */
+ 26, /* pushre */
+ 27, /* rv2gv */
+ 34, /* rv2sv */
+ 39, /* av2arylen */
+ 41, /* rv2cv */
+ -1, /* anoncode */
+ 0, /* prototype */
+ 0, /* refgen */
+ 0, /* srefgen */
+ 0, /* ref */
+ 48, /* bless */
+ 49, /* backtick */
+ 48, /* glob */
+ 0, /* readline */
+ -1, /* rcatline */
+ 0, /* regcmaybe */
+ 0, /* regcreset */
+ 0, /* regcomp */
+ 26, /* match */
+ 26, /* qr */
+ 26, /* subst */
+ 54, /* substcont */
+ 56, /* trans */
+ 56, /* transr */
+ 63, /* sassign */
+ 66, /* aassign */
+ 0, /* chop */
+ 0, /* schop */
+ 71, /* chomp */
+ 71, /* schomp */
+ 0, /* defined */
+ 0, /* undef */
+ 0, /* study */
+ 39, /* pos */
+ 0, /* preinc */
+ 0, /* i_preinc */
+ 0, /* predec */
+ 0, /* i_predec */
+ 0, /* postinc */
+ 0, /* i_postinc */
+ 0, /* postdec */
+ 0, /* i_postdec */
+ 73, /* pow */
+ 73, /* multiply */
+ 73, /* i_multiply */
+ 73, /* divide */
+ 73, /* i_divide */
+ 73, /* modulo */
+ 73, /* i_modulo */
+ 75, /* repeat */
+ 73, /* add */
+ 73, /* i_add */
+ 73, /* subtract */
+ 73, /* i_subtract */
+ 73, /* concat */
+ 77, /* stringify */
+ 73, /* left_shift */
+ 73, /* right_shift */
+ 12, /* lt */
+ 12, /* i_lt */
+ 12, /* gt */
+ 12, /* i_gt */
+ 12, /* le */
+ 12, /* i_le */
+ 12, /* ge */
+ 12, /* i_ge */
+ 12, /* eq */
+ 12, /* i_eq */
+ 12, /* ne */
+ 12, /* i_ne */
+ 12, /* ncmp */
+ 12, /* i_ncmp */
+ 12, /* slt */
+ 12, /* sgt */
+ 12, /* sle */
+ 12, /* sge */
+ 12, /* seq */
+ 12, /* sne */
+ 12, /* scmp */
+ 12, /* bit_and */
+ 12, /* bit_xor */
+ 12, /* bit_or */
+ 73, /* nbit_and */
+ 73, /* nbit_xor */
+ 73, /* nbit_or */
+ 12, /* sbit_and */
+ 12, /* sbit_xor */
+ 12, /* sbit_or */
+ 0, /* negate */
+ 0, /* i_negate */
+ 0, /* not */
+ 0, /* complement */
+ 71, /* ncomplement */
+ 71, /* scomplement */
+ 12, /* smartmatch */
+ 77, /* atan2 */
+ 71, /* sin */
+ 71, /* cos */
+ 77, /* rand */
+ 77, /* srand */
+ 71, /* exp */
+ 71, /* log */
+ 71, /* sqrt */
+ 71, /* int */
+ 71, /* hex */
+ 71, /* oct */
+ 71, /* abs */
+ 71, /* length */
+ 79, /* substr */
+ 82, /* vec */
+ 77, /* index */
+ 77, /* rindex */
+ 48, /* sprintf */
+ 48, /* formline */
+ 71, /* ord */
+ 71, /* chr */
+ 77, /* crypt */
+ 0, /* ucfirst */
+ 0, /* lcfirst */
+ 0, /* uc */
+ 0, /* lc */
+ 0, /* quotemeta */
+ 84, /* rv2av */
+ 90, /* aelemfast */
+ 90, /* aelemfast_lex */
+ 91, /* aelem */
+ 96, /* aslice */
+ 99, /* kvaslice */
+ 0, /* aeach */
+ 0, /* akeys */
+ 0, /* avalues */
+ 0, /* each */
+ 0, /* values */
+ 39, /* keys */
+ 100, /* delete */
+ 103, /* exists */
+ 105, /* rv2hv */
+ 91, /* helem */
+ 96, /* hslice */
+ 99, /* kvhslice */
+ 113, /* multideref */
+ 48, /* unpack */
+ 48, /* pack */
+ 120, /* split */
+ 48, /* join */
+ 122, /* list */
+ 12, /* lslice */
+ 48, /* anonlist */
+ 48, /* anonhash */
+ 48, /* splice */
+ 77, /* push */
+ 0, /* pop */
+ 0, /* shift */
+ 77, /* unshift */
+ 124, /* sort */
+ 131, /* reverse */
+ 0, /* grepstart */
+ 0, /* grepwhile */
+ 0, /* mapstart */
+ 0, /* mapwhile */
+ 0, /* range */
+ 133, /* flip */
+ 133, /* flop */
+ 0, /* and */
+ 0, /* or */
+ 12, /* xor */
+ 0, /* dor */
+ 135, /* cond_expr */
+ 0, /* andassign */
+ 0, /* orassign */
+ 0, /* dorassign */
+ 0, /* method */
+ 137, /* entersub */
+ 144, /* leavesub */
+ 144, /* leavesublv */
+ 146, /* caller */
+ 48, /* warn */
+ 48, /* die */
+ 48, /* reset */
+ -1, /* lineseq */
+ 148, /* nextstate */
+ 148, /* dbstate */
+ -1, /* unstack */
+ -1, /* enter */
+ 149, /* leave */
+ -1, /* scope */
+ 151, /* enteriter */
+ 155, /* iter */
+ -1, /* enterloop */
+ 156, /* leaveloop */
+ -1, /* return */
+ 158, /* last */
+ 158, /* next */
+ 158, /* redo */
+ 158, /* dump */
+ 158, /* goto */
+ 48, /* exit */
+ 0, /* method_named */
+ 0, /* method_super */
+ 0, /* method_redir */
+ 0, /* method_redir_super */
+ 0, /* entergiven */
+ 0, /* leavegiven */
+ 0, /* enterwhen */
+ 0, /* leavewhen */
+ -1, /* break */
+ -1, /* continue */
+ 160, /* open */
+ 48, /* close */
+ 48, /* pipe_op */
+ 48, /* fileno */
+ 48, /* umask */
+ 48, /* binmode */
+ 48, /* tie */
+ 0, /* untie */
+ 0, /* tied */
+ 48, /* dbmopen */
+ 0, /* dbmclose */
+ 48, /* sselect */
+ 48, /* select */
+ 48, /* getc */
+ 48, /* read */
+ 48, /* enterwrite */
+ 144, /* leavewrite */
+ -1, /* prtf */
+ -1, /* print */
+ -1, /* say */
+ 48, /* sysopen */
+ 48, /* sysseek */
+ 48, /* sysread */
+ 48, /* syswrite */
+ 48, /* eof */
+ 48, /* tell */
+ 48, /* seek */
+ 48, /* truncate */
+ 48, /* fcntl */
+ 48, /* ioctl */
+ 77, /* flock */
+ 48, /* send */
+ 48, /* recv */
+ 48, /* socket */
+ 48, /* sockpair */
+ 48, /* bind */
+ 48, /* connect */
+ 48, /* listen */
+ 48, /* accept */
+ 48, /* shutdown */
+ 48, /* gsockopt */
+ 48, /* ssockopt */
+ 0, /* getsockname */
+ 0, /* getpeername */
+ 0, /* lstat */
+ 0, /* stat */
+ 165, /* ftrread */
+ 165, /* ftrwrite */
+ 165, /* ftrexec */
+ 165, /* fteread */
+ 165, /* ftewrite */
+ 165, /* fteexec */
+ 170, /* ftis */
+ 170, /* ftsize */
+ 170, /* ftmtime */
+ 170, /* ftatime */
+ 170, /* ftctime */
+ 170, /* ftrowned */
+ 170, /* fteowned */
+ 170, /* ftzero */
+ 170, /* ftsock */
+ 170, /* ftchr */
+ 170, /* ftblk */
+ 170, /* ftfile */
+ 170, /* ftdir */
+ 170, /* ftpipe */
+ 170, /* ftsuid */
+ 170, /* ftsgid */
+ 170, /* ftsvtx */
+ 170, /* ftlink */
+ 170, /* fttty */
+ 170, /* fttext */
+ 170, /* ftbinary */
+ 77, /* chdir */
+ 77, /* chown */
+ 71, /* chroot */
+ 77, /* unlink */
+ 77, /* chmod */
+ 77, /* utime */
+ 77, /* rename */
+ 77, /* link */
+ 77, /* symlink */
+ 0, /* readlink */
+ 77, /* mkdir */
+ 71, /* rmdir */
+ 48, /* open_dir */
+ 0, /* readdir */
+ 0, /* telldir */
+ 48, /* seekdir */
+ 0, /* rewinddir */
+ 0, /* closedir */
+ -1, /* fork */
+ 174, /* wait */
+ 77, /* waitpid */
+ 77, /* system */
+ 77, /* exec */
+ 77, /* kill */
+ 174, /* getppid */
+ 77, /* getpgrp */
+ 77, /* setpgrp */
+ 77, /* getpriority */
+ 77, /* setpriority */
+ 174, /* time */
+ -1, /* tms */
+ 0, /* localtime */
+ 48, /* gmtime */
+ 0, /* alarm */
+ 77, /* sleep */
+ 48, /* shmget */
+ 48, /* shmctl */
+ 48, /* shmread */
+ 48, /* shmwrite */
+ 48, /* msgget */
+ 48, /* msgctl */
+ 48, /* msgsnd */
+ 48, /* msgrcv */
+ 48, /* semop */
+ 48, /* semget */
+ 48, /* semctl */
+ 0, /* require */
+ 0, /* dofile */
+ -1, /* hintseval */
+ 175, /* entereval */
+ 144, /* leaveeval */
+ 0, /* entertry */
+ -1, /* leavetry */
+ 0, /* ghbyname */
+ 48, /* ghbyaddr */
+ -1, /* ghostent */
+ 0, /* gnbyname */
+ 48, /* gnbyaddr */
+ -1, /* gnetent */
+ 0, /* gpbyname */
+ 48, /* gpbynumber */
+ -1, /* gprotoent */
+ 48, /* gsbyname */
+ 48, /* gsbyport */
+ -1, /* gservent */
+ 0, /* shostent */
+ 0, /* snetent */
+ 0, /* sprotoent */
+ 0, /* sservent */
+ -1, /* ehostent */
+ -1, /* enetent */
+ -1, /* eprotoent */
+ -1, /* eservent */
+ 0, /* gpwnam */
+ 0, /* gpwuid */
+ -1, /* gpwent */
+ -1, /* spwent */
+ -1, /* epwent */
+ 0, /* ggrnam */
+ 0, /* ggrgid */
+ -1, /* ggrent */
+ -1, /* sgrent */
+ -1, /* egrent */
+ -1, /* getlogin */
+ 48, /* syscall */
+ 0, /* lock */
+ 0, /* once */
+ -1, /* custom */
+ 181, /* coreargs */
+ 3, /* runcv */
+ 0, /* fc */
+ -1, /* padcv */
+ -1, /* introcv */
+ -1, /* clonecv */
+ 185, /* padrange */
+ 187, /* refassign */
+ 193, /* lvref */
+ 199, /* lvrefslice */
+ 200, /* lvavref */
+ 0, /* anonconst */
+
+};
+
+
+
+/* PL_op_private_bitdefs[]: given a starting position in this array (as
+ * supplied by PL_op_private_bitdef_ix[]), each word (until a stop bit is
+ * seen) defines the meaning of a particular op_private bit for a
+ * particular op. Each word consists of:
+ * bit 0: stop bit: this is the last bit def for the current op
+ * bit 1: bitfield: if set, this defines a bit field rather than a flag
+ * bits 2..4: unsigned number in the range 0..7 which is the bit number
+ * bits 5..15: unsigned number in the range 0..2047 which is an index
+ * into PL_op_private_labels[] (for a flag), or
+ * into PL_op_private_bitfields[] (for a bit field)
+ */
+
+EXTCONST U16 PL_op_private_bitdefs[] = {
+ 0x0003, /* scalar, prototype, refgen, srefgen, ref, readline, regcmaybe, regcreset, regcomp, chop, schop, defined, undef, study, preinc, i_preinc, predec, i_predec, postinc, i_postinc, postdec, i_postdec, negate, i_negate, not, complement, ucfirst, lcfirst, uc, lc, quotemeta, aeach, akeys, avalues, each, values, pop, shift, grepstart, grepwhile, mapstart, mapwhile, range, and, or, dor, andassign, orassign, dorassign, method, method_named, method_super, method_redir, method_redir_super, entergiven, leavegiven, enterwhen, leavewhen, untie, tied, dbmclose, getsockname, getpeername, lstat, stat, readlink, readdir, telldir, rewinddir, closedir, localtime, alarm, require, dofile, entertry, ghbyname, gnbyname, gpbyname, shostent, snetent, sprotoent, sservent, gpwnam, gpwuid, ggrnam, ggrgid, lock, once, fc, anonconst */
+ 0x2b5c, 0x3d59, /* pushmark */
+ 0x00bd, /* wantarray, runcv */
+ 0x03b8, 0x17f0, 0x3e0c, 0x38c8, 0x2f25, /* const */
+ 0x2b5c, 0x3079, /* gvsv */
+ 0x1655, /* gv */
+ 0x0067, /* gelem, lt, i_lt, gt, i_gt, le, i_le, ge, i_ge, eq, i_eq, ne, i_ne, ncmp, i_ncmp, slt, sgt, sle, sge, seq, sne, scmp, bit_and, bit_xor, bit_or, sbit_and, sbit_xor, sbit_or, smartmatch, lslice, xor */
+ 0x2b5c, 0x3d58, 0x0257, /* padsv */
+ 0x2b5c, 0x3d58, 0x2c4c, 0x3a49, /* padav */
+ 0x2b5c, 0x3d58, 0x0534, 0x05d0, 0x2c4c, 0x3a49, /* padhv */
+ 0x3819, /* pushre, match, qr, subst */
+ 0x2b5c, 0x19d8, 0x0256, 0x2c4c, 0x2e48, 0x3e04, 0x0003, /* rv2gv */
+ 0x2b5c, 0x3078, 0x0256, 0x3e04, 0x0003, /* rv2sv */
+ 0x2c4c, 0x0003, /* av2arylen, pos, keys */
+ 0x2dbc, 0x0e18, 0x0b74, 0x028c, 0x3fc8, 0x3e04, 0x0003, /* rv2cv */
+ 0x012f, /* bless, glob, sprintf, formline, unpack, pack, join, anonlist, anonhash, splice, warn, die, reset, exit, close, pipe_op, fileno, umask, binmode, tie, dbmopen, sselect, select, getc, read, enterwrite, sysopen, sysseek, sysread, syswrite, eof, tell, seek, truncate, fcntl, ioctl, send, recv, socket, sockpair, bind, connect, listen, accept, shutdown, gsockopt, ssockopt, open_dir, seekdir, gmtime, shmget, shmctl, shmread, shmwrite, msgget, msgctl, msgsnd, msgrcv, semop, semget, semctl, ghbyaddr, gnbyaddr, gpbynumber, gsbyname, gsbyport, syscall */
+ 0x325c, 0x3178, 0x2634, 0x2570, 0x0003, /* backtick */
+ 0x3818, 0x0003, /* substcont */
+ 0x0f1c, 0x1f58, 0x0754, 0x3b8c, 0x22e8, 0x01e4, 0x0141, /* trans, transr */
+ 0x0d5c, 0x0458, 0x0067, /* sassign */
+ 0x0a18, 0x0914, 0x0810, 0x2c4c, 0x0067, /* aassign */
+ 0x4070, 0x0003, /* chomp, schomp, ncomplement, scomplement, sin, cos, exp, log, sqrt, int, hex, oct, abs, length, ord, chr, chroot, rmdir */
+ 0x4070, 0x0067, /* pow, multiply, i_multiply, divide, i_divide, modulo, i_modulo, add, i_add, subtract, i_subtract, concat, left_shift, right_shift, nbit_and, nbit_xor, nbit_or */
+ 0x12d8, 0x0067, /* repeat */
+ 0x4070, 0x012f, /* stringify, atan2, rand, srand, index, rindex, crypt, push, unshift, flock, chdir, chown, unlink, chmod, utime, rename, link, symlink, mkdir, waitpid, system, exec, kill, getpgrp, setpgrp, getpriority, setpriority, sleep */
+ 0x3570, 0x2c4c, 0x00cb, /* substr */
+ 0x2c4c, 0x0067, /* vec */
+ 0x2b5c, 0x3078, 0x2c4c, 0x3a48, 0x3e04, 0x0003, /* rv2av */
+ 0x01ff, /* aelemfast, aelemfast_lex */
+ 0x2b5c, 0x2a58, 0x0256, 0x2c4c, 0x0067, /* aelem, helem */
+ 0x2b5c, 0x2c4c, 0x3a49, /* aslice, hslice */
+ 0x2c4d, /* kvaslice, kvhslice */
+ 0x2b5c, 0x3998, 0x0003, /* delete */
+ 0x3ef8, 0x0003, /* exists */
+ 0x2b5c, 0x3078, 0x0534, 0x05d0, 0x2c4c, 0x3a48, 0x3e04, 0x0003, /* rv2hv */
+ 0x2b5c, 0x2a58, 0x0f94, 0x18f0, 0x2c4c, 0x3e04, 0x0003, /* multideref */
+ 0x23bc, 0x3079, /* split */
+ 0x2b5c, 0x2019, /* list */
+ 0x3c78, 0x3314, 0x1230, 0x26cc, 0x3668, 0x27c4, 0x2fe1, /* sort */
+ 0x26cc, 0x0003, /* reverse */
+ 0x28f8, 0x0003, /* flip, flop */
+ 0x2b5c, 0x0003, /* cond_expr */
+ 0x2b5c, 0x0e18, 0x0256, 0x028c, 0x3fc8, 0x3e04, 0x2481, /* entersub */
+ 0x33d8, 0x0003, /* leavesub, leavesublv, leavewrite, leaveeval */
+ 0x00bc, 0x012f, /* caller */
+ 0x21f5, /* nextstate, dbstate */
+ 0x29fc, 0x33d9, /* leave */
+ 0x2b5c, 0x3078, 0x0e8c, 0x36e9, /* enteriter */
+ 0x36e9, /* iter */
+ 0x29fc, 0x0067, /* leaveloop */
+ 0x41dc, 0x0003, /* last, next, redo, dump, goto */
+ 0x325c, 0x3178, 0x2634, 0x2570, 0x012f, /* open */
+ 0x1b90, 0x1dec, 0x1ca8, 0x1a64, 0x0003, /* ftrread, ftrwrite, ftrexec, fteread, ftewrite, fteexec */
+ 0x1b90, 0x1dec, 0x1ca8, 0x0003, /* ftis, ftsize, ftmtime, ftatime, ftctime, ftrowned, fteowned, ftzero, ftsock, ftchr, ftblk, ftfile, ftdir, ftpipe, ftsuid, ftsgid, ftsvtx, ftlink, fttty, fttext, ftbinary */
+ 0x4071, /* wait, getppid, time */
+ 0x3474, 0x0c30, 0x068c, 0x4148, 0x2104, 0x0003, /* entereval */
+ 0x2d1c, 0x0018, 0x1144, 0x1061, /* coreargs */
+ 0x2b5c, 0x019b, /* padrange */
+ 0x2b5c, 0x3d58, 0x0376, 0x284c, 0x1748, 0x0067, /* refassign */
+ 0x2b5c, 0x3d58, 0x0376, 0x284c, 0x1748, 0x0003, /* lvref */
+ 0x2b5d, /* lvrefslice */
+ 0x2b5c, 0x3d58, 0x0003, /* lvavref */
+
+};
+
+
+/* PL_op_private_valid: for each op, indexed by op_type, indicate which
+ * flags bits in op_private are legal */
+
+EXTCONST U8 PL_op_private_valid[] = {
+ /* NULL */ (0xff),
+ /* STUB */ (0),
+ /* SCALAR */ (OPpARG1_MASK),
+ /* PUSHMARK */ (OPpPAD_STATE|OPpLVAL_INTRO),
+ /* WANTARRAY */ (OPpOFFBYONE),
+ /* CONST */ (OPpCONST_NOVER|OPpCONST_SHORTCIRCUIT|OPpCONST_STRICT|OPpCONST_ENTERED|OPpCONST_BARE),
+ /* GVSV */ (OPpOUR_INTRO|OPpLVAL_INTRO),
+ /* GV */ (OPpEARLY_CV),
+ /* GELEM */ (OPpARG2_MASK),
+ /* PADSV */ (OPpDEREF|OPpPAD_STATE|OPpLVAL_INTRO),
+ /* PADAV */ (OPpSLICEWARNING|OPpMAYBE_LVSUB|OPpPAD_STATE|OPpLVAL_INTRO),
+ /* PADHV */ (OPpSLICEWARNING|OPpMAYBE_LVSUB|OPpMAYBE_TRUEBOOL|OPpTRUEBOOL|OPpPAD_STATE|OPpLVAL_INTRO),
+ /* PADANY */ (0),
+ /* PUSHRE */ (OPpRUNTIME),
+ /* RV2GV */ (OPpARG1_MASK|OPpHINT_STRICT_REFS|OPpDONT_INIT_GV|OPpMAYBE_LVSUB|OPpDEREF|OPpALLOW_FAKE|OPpLVAL_INTRO),
+ /* RV2SV */ (OPpARG1_MASK|OPpHINT_STRICT_REFS|OPpDEREF|OPpOUR_INTRO|OPpLVAL_INTRO),
+ /* AV2ARYLEN */ (OPpARG1_MASK|OPpMAYBE_LVSUB),
+ /* RV2CV */ (OPpARG1_MASK|OPpHINT_STRICT_REFS|OPpENTERSUB_HASTARG|OPpENTERSUB_AMPER|OPpMAY_RETURN_CONSTANT|OPpENTERSUB_DB|OPpENTERSUB_NOPAREN),
+ /* ANONCODE */ (0),
+ /* PROTOTYPE */ (OPpARG1_MASK),
+ /* REFGEN */ (OPpARG1_MASK),
+ /* SREFGEN */ (OPpARG1_MASK),
+ /* REF */ (OPpARG1_MASK),
+ /* BLESS */ (OPpARG4_MASK),
+ /* BACKTICK */ (OPpARG1_MASK|OPpOPEN_IN_RAW|OPpOPEN_IN_CRLF|OPpOPEN_OUT_RAW|OPpOPEN_OUT_CRLF),
+ /* GLOB */ (OPpARG4_MASK),
+ /* READLINE */ (OPpARG1_MASK),
+ /* RCATLINE */ (0),
+ /* REGCMAYBE */ (OPpARG1_MASK),
+ /* REGCRESET */ (OPpARG1_MASK),
+ /* REGCOMP */ (OPpARG1_MASK),
+ /* MATCH */ (OPpRUNTIME),
+ /* QR */ (OPpRUNTIME),
+ /* SUBST */ (OPpRUNTIME),
+ /* SUBSTCONT */ (OPpARG1_MASK|OPpRUNTIME),
+ /* TRANS */ (OPpTRANS_FROM_UTF|OPpTRANS_TO_UTF|OPpTRANS_IDENTICAL|OPpTRANS_SQUASH|OPpTRANS_COMPLEMENT|OPpTRANS_GROWS|OPpTRANS_DELETE),
+ /* TRANSR */ (OPpTRANS_FROM_UTF|OPpTRANS_TO_UTF|OPpTRANS_IDENTICAL|OPpTRANS_SQUASH|OPpTRANS_COMPLEMENT|OPpTRANS_GROWS|OPpTRANS_DELETE),
+ /* SASSIGN */ (OPpARG2_MASK|OPpASSIGN_BACKWARDS|OPpASSIGN_CV_TO_GV),
+ /* AASSIGN */ (OPpARG2_MASK|OPpMAYBE_LVSUB|OPpASSIGN_COMMON_AGG|OPpASSIGN_COMMON_RC1|OPpASSIGN_COMMON_SCALAR),
+ /* CHOP */ (OPpARG1_MASK),
+ /* SCHOP */ (OPpARG1_MASK),
+ /* CHOMP */ (OPpARG1_MASK|OPpTARGET_MY),
+ /* SCHOMP */ (OPpARG1_MASK|OPpTARGET_MY),
+ /* DEFINED */ (OPpARG1_MASK),
+ /* UNDEF */ (OPpARG1_MASK),
+ /* STUDY */ (OPpARG1_MASK),
+ /* POS */ (OPpARG1_MASK|OPpMAYBE_LVSUB),
+ /* PREINC */ (OPpARG1_MASK),
+ /* I_PREINC */ (OPpARG1_MASK),
+ /* PREDEC */ (OPpARG1_MASK),
+ /* I_PREDEC */ (OPpARG1_MASK),
+ /* POSTINC */ (OPpARG1_MASK),
+ /* I_POSTINC */ (OPpARG1_MASK),
+ /* POSTDEC */ (OPpARG1_MASK),
+ /* I_POSTDEC */ (OPpARG1_MASK),
+ /* POW */ (OPpARG2_MASK|OPpTARGET_MY),
+ /* MULTIPLY */ (OPpARG2_MASK|OPpTARGET_MY),
+ /* I_MULTIPLY */ (OPpARG2_MASK|OPpTARGET_MY),
+ /* DIVIDE */ (OPpARG2_MASK|OPpTARGET_MY),
+ /* I_DIVIDE */ (OPpARG2_MASK|OPpTARGET_MY),
+ /* MODULO */ (OPpARG2_MASK|OPpTARGET_MY),
+ /* I_MODULO */ (OPpARG2_MASK|OPpTARGET_MY),
+ /* REPEAT */ (OPpARG2_MASK|OPpREPEAT_DOLIST),
+ /* ADD */ (OPpARG2_MASK|OPpTARGET_MY),
+ /* I_ADD */ (OPpARG2_MASK|OPpTARGET_MY),
+ /* SUBTRACT */ (OPpARG2_MASK|OPpTARGET_MY),
+ /* I_SUBTRACT */ (OPpARG2_MASK|OPpTARGET_MY),
+ /* CONCAT */ (OPpARG2_MASK|OPpTARGET_MY),
+ /* STRINGIFY */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* LEFT_SHIFT */ (OPpARG2_MASK|OPpTARGET_MY),
+ /* RIGHT_SHIFT */ (OPpARG2_MASK|OPpTARGET_MY),
+ /* LT */ (OPpARG2_MASK),
+ /* I_LT */ (OPpARG2_MASK),
+ /* GT */ (OPpARG2_MASK),
+ /* I_GT */ (OPpARG2_MASK),
+ /* LE */ (OPpARG2_MASK),
+ /* I_LE */ (OPpARG2_MASK),
+ /* GE */ (OPpARG2_MASK),
+ /* I_GE */ (OPpARG2_MASK),
+ /* EQ */ (OPpARG2_MASK),
+ /* I_EQ */ (OPpARG2_MASK),
+ /* NE */ (OPpARG2_MASK),
+ /* I_NE */ (OPpARG2_MASK),
+ /* NCMP */ (OPpARG2_MASK),
+ /* I_NCMP */ (OPpARG2_MASK),
+ /* SLT */ (OPpARG2_MASK),
+ /* SGT */ (OPpARG2_MASK),
+ /* SLE */ (OPpARG2_MASK),
+ /* SGE */ (OPpARG2_MASK),
+ /* SEQ */ (OPpARG2_MASK),
+ /* SNE */ (OPpARG2_MASK),
+ /* SCMP */ (OPpARG2_MASK),
+ /* BIT_AND */ (OPpARG2_MASK),
+ /* BIT_XOR */ (OPpARG2_MASK),
+ /* BIT_OR */ (OPpARG2_MASK),
+ /* NBIT_AND */ (OPpARG2_MASK|OPpTARGET_MY),
+ /* NBIT_XOR */ (OPpARG2_MASK|OPpTARGET_MY),
+ /* NBIT_OR */ (OPpARG2_MASK|OPpTARGET_MY),
+ /* SBIT_AND */ (OPpARG2_MASK),
+ /* SBIT_XOR */ (OPpARG2_MASK),
+ /* SBIT_OR */ (OPpARG2_MASK),
+ /* NEGATE */ (OPpARG1_MASK),
+ /* I_NEGATE */ (OPpARG1_MASK),
+ /* NOT */ (OPpARG1_MASK),
+ /* COMPLEMENT */ (OPpARG1_MASK),
+ /* NCOMPLEMENT */ (OPpARG1_MASK|OPpTARGET_MY),
+ /* SCOMPLEMENT */ (OPpARG1_MASK|OPpTARGET_MY),
+ /* SMARTMATCH */ (OPpARG2_MASK),
+ /* ATAN2 */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* SIN */ (OPpARG1_MASK|OPpTARGET_MY),
+ /* COS */ (OPpARG1_MASK|OPpTARGET_MY),
+ /* RAND */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* SRAND */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* EXP */ (OPpARG1_MASK|OPpTARGET_MY),
+ /* LOG */ (OPpARG1_MASK|OPpTARGET_MY),
+ /* SQRT */ (OPpARG1_MASK|OPpTARGET_MY),
+ /* INT */ (OPpARG1_MASK|OPpTARGET_MY),
+ /* HEX */ (OPpARG1_MASK|OPpTARGET_MY),
+ /* OCT */ (OPpARG1_MASK|OPpTARGET_MY),
+ /* ABS */ (OPpARG1_MASK|OPpTARGET_MY),
+ /* LENGTH */ (OPpARG1_MASK|OPpTARGET_MY),
+ /* SUBSTR */ (OPpARG3_MASK|OPpMAYBE_LVSUB|OPpSUBSTR_REPL_FIRST),
+ /* VEC */ (OPpARG2_MASK|OPpMAYBE_LVSUB),
+ /* INDEX */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* RINDEX */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* SPRINTF */ (OPpARG4_MASK),
+ /* FORMLINE */ (OPpARG4_MASK),
+ /* ORD */ (OPpARG1_MASK|OPpTARGET_MY),
+ /* CHR */ (OPpARG1_MASK|OPpTARGET_MY),
+ /* CRYPT */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* UCFIRST */ (OPpARG1_MASK),
+ /* LCFIRST */ (OPpARG1_MASK),
+ /* UC */ (OPpARG1_MASK),
+ /* LC */ (OPpARG1_MASK),
+ /* QUOTEMETA */ (OPpARG1_MASK),
+ /* RV2AV */ (OPpARG1_MASK|OPpHINT_STRICT_REFS|OPpSLICEWARNING|OPpMAYBE_LVSUB|OPpOUR_INTRO|OPpLVAL_INTRO),
+ /* AELEMFAST */ (255),
+ /* AELEMFAST_LEX */ (255),
+ /* AELEM */ (OPpARG2_MASK|OPpMAYBE_LVSUB|OPpDEREF|OPpLVAL_DEFER|OPpLVAL_INTRO),
+ /* ASLICE */ (OPpSLICEWARNING|OPpMAYBE_LVSUB|OPpLVAL_INTRO),
+ /* KVASLICE */ (OPpMAYBE_LVSUB),
+ /* AEACH */ (OPpARG1_MASK),
+ /* AKEYS */ (OPpARG1_MASK),
+ /* AVALUES */ (OPpARG1_MASK),
+ /* EACH */ (OPpARG1_MASK),
+ /* VALUES */ (OPpARG1_MASK),
+ /* KEYS */ (OPpARG1_MASK|OPpMAYBE_LVSUB),
+ /* DELETE */ (OPpARG1_MASK|OPpSLICE|OPpLVAL_INTRO),
+ /* EXISTS */ (OPpARG1_MASK|OPpEXISTS_SUB),
+ /* RV2HV */ (OPpARG1_MASK|OPpHINT_STRICT_REFS|OPpSLICEWARNING|OPpMAYBE_LVSUB|OPpMAYBE_TRUEBOOL|OPpTRUEBOOL|OPpOUR_INTRO|OPpLVAL_INTRO),
+ /* HELEM */ (OPpARG2_MASK|OPpMAYBE_LVSUB|OPpDEREF|OPpLVAL_DEFER|OPpLVAL_INTRO),
+ /* HSLICE */ (OPpSLICEWARNING|OPpMAYBE_LVSUB|OPpLVAL_INTRO),
+ /* KVHSLICE */ (OPpMAYBE_LVSUB),
+ /* MULTIDEREF */ (OPpARG1_MASK|OPpHINT_STRICT_REFS|OPpMAYBE_LVSUB|OPpMULTIDEREF_EXISTS|OPpMULTIDEREF_DELETE|OPpLVAL_DEFER|OPpLVAL_INTRO),
+ /* UNPACK */ (OPpARG4_MASK),
+ /* PACK */ (OPpARG4_MASK),
+ /* SPLIT */ (OPpOUR_INTRO|OPpSPLIT_IMPLIM),
+ /* JOIN */ (OPpARG4_MASK),
+ /* LIST */ (OPpLIST_GUESSED|OPpLVAL_INTRO),
+ /* LSLICE */ (OPpARG2_MASK),
+ /* ANONLIST */ (OPpARG4_MASK),
+ /* ANONHASH */ (OPpARG4_MASK),
+ /* SPLICE */ (OPpARG4_MASK),
+ /* PUSH */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* POP */ (OPpARG1_MASK),
+ /* SHIFT */ (OPpARG1_MASK),
+ /* UNSHIFT */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* SORT */ (OPpSORT_NUMERIC|OPpSORT_INTEGER|OPpSORT_REVERSE|OPpSORT_INPLACE|OPpSORT_DESCEND|OPpSORT_QSORT|OPpSORT_STABLE),
+ /* REVERSE */ (OPpARG1_MASK|OPpREVERSE_INPLACE),
+ /* GREPSTART */ (OPpARG1_MASK),
+ /* GREPWHILE */ (OPpARG1_MASK),
+ /* MAPSTART */ (OPpARG1_MASK),
+ /* MAPWHILE */ (OPpARG1_MASK),
+ /* RANGE */ (OPpARG1_MASK),
+ /* FLIP */ (OPpARG1_MASK|OPpFLIP_LINENUM),
+ /* FLOP */ (OPpARG1_MASK|OPpFLIP_LINENUM),
+ /* AND */ (OPpARG1_MASK),
+ /* OR */ (OPpARG1_MASK),
+ /* XOR */ (OPpARG2_MASK),
+ /* DOR */ (OPpARG1_MASK),
+ /* COND_EXPR */ (OPpARG1_MASK|OPpLVAL_INTRO),
+ /* ANDASSIGN */ (OPpARG1_MASK),
+ /* ORASSIGN */ (OPpARG1_MASK),
+ /* DORASSIGN */ (OPpARG1_MASK),
+ /* METHOD */ (OPpARG1_MASK),
+ /* ENTERSUB */ (OPpENTERSUB_INARGS|OPpHINT_STRICT_REFS|OPpENTERSUB_HASTARG|OPpENTERSUB_AMPER|OPpDEREF|OPpENTERSUB_DB|OPpLVAL_INTRO),
+ /* LEAVESUB */ (OPpARG1_MASK|OPpREFCOUNTED),
+ /* LEAVESUBLV */ (OPpARG1_MASK|OPpREFCOUNTED),
+ /* CALLER */ (OPpARG4_MASK|OPpOFFBYONE),
+ /* WARN */ (OPpARG4_MASK),
+ /* DIE */ (OPpARG4_MASK),
+ /* RESET */ (OPpARG4_MASK),
+ /* LINESEQ */ (0),
+ /* NEXTSTATE */ (OPpHUSH_VMSISH),
+ /* DBSTATE */ (OPpHUSH_VMSISH),
+ /* UNSTACK */ (0),
+ /* ENTER */ (0),
+ /* LEAVE */ (OPpREFCOUNTED|OPpLVALUE),
+ /* SCOPE */ (0),
+ /* ENTERITER */ (OPpITER_REVERSED|OPpITER_DEF|OPpOUR_INTRO|OPpLVAL_INTRO),
+ /* ITER */ (OPpITER_REVERSED),
+ /* ENTERLOOP */ (0),
+ /* LEAVELOOP */ (OPpARG2_MASK|OPpLVALUE),
+ /* RETURN */ (0),
+ /* LAST */ (OPpARG1_MASK|OPpPV_IS_UTF8),
+ /* NEXT */ (OPpARG1_MASK|OPpPV_IS_UTF8),
+ /* REDO */ (OPpARG1_MASK|OPpPV_IS_UTF8),
+ /* DUMP */ (OPpARG1_MASK|OPpPV_IS_UTF8),
+ /* GOTO */ (OPpARG1_MASK|OPpPV_IS_UTF8),
+ /* EXIT */ (OPpARG4_MASK),
+ /* METHOD_NAMED */ (OPpARG1_MASK),
+ /* METHOD_SUPER */ (OPpARG1_MASK),
+ /* METHOD_REDIR */ (OPpARG1_MASK),
+ /* METHOD_REDIR_SUPER */ (OPpARG1_MASK),
+ /* ENTERGIVEN */ (OPpARG1_MASK),
+ /* LEAVEGIVEN */ (OPpARG1_MASK),
+ /* ENTERWHEN */ (OPpARG1_MASK),
+ /* LEAVEWHEN */ (OPpARG1_MASK),
+ /* BREAK */ (0),
+ /* CONTINUE */ (0),
+ /* OPEN */ (OPpARG4_MASK|OPpOPEN_IN_RAW|OPpOPEN_IN_CRLF|OPpOPEN_OUT_RAW|OPpOPEN_OUT_CRLF),
+ /* CLOSE */ (OPpARG4_MASK),
+ /* PIPE_OP */ (OPpARG4_MASK),
+ /* FILENO */ (OPpARG4_MASK),
+ /* UMASK */ (OPpARG4_MASK),
+ /* BINMODE */ (OPpARG4_MASK),
+ /* TIE */ (OPpARG4_MASK),
+ /* UNTIE */ (OPpARG1_MASK),
+ /* TIED */ (OPpARG1_MASK),
+ /* DBMOPEN */ (OPpARG4_MASK),
+ /* DBMCLOSE */ (OPpARG1_MASK),
+ /* SSELECT */ (OPpARG4_MASK),
+ /* SELECT */ (OPpARG4_MASK),
+ /* GETC */ (OPpARG4_MASK),
+ /* READ */ (OPpARG4_MASK),
+ /* ENTERWRITE */ (OPpARG4_MASK),
+ /* LEAVEWRITE */ (OPpARG1_MASK|OPpREFCOUNTED),
+ /* PRTF */ (0),
+ /* PRINT */ (0),
+ /* SAY */ (0),
+ /* SYSOPEN */ (OPpARG4_MASK),
+ /* SYSSEEK */ (OPpARG4_MASK),
+ /* SYSREAD */ (OPpARG4_MASK),
+ /* SYSWRITE */ (OPpARG4_MASK),
+ /* EOF */ (OPpARG4_MASK),
+ /* TELL */ (OPpARG4_MASK),
+ /* SEEK */ (OPpARG4_MASK),
+ /* TRUNCATE */ (OPpARG4_MASK),
+ /* FCNTL */ (OPpARG4_MASK),
+ /* IOCTL */ (OPpARG4_MASK),
+ /* FLOCK */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* SEND */ (OPpARG4_MASK),
+ /* RECV */ (OPpARG4_MASK),
+ /* SOCKET */ (OPpARG4_MASK),
+ /* SOCKPAIR */ (OPpARG4_MASK),
+ /* BIND */ (OPpARG4_MASK),
+ /* CONNECT */ (OPpARG4_MASK),
+ /* LISTEN */ (OPpARG4_MASK),
+ /* ACCEPT */ (OPpARG4_MASK),
+ /* SHUTDOWN */ (OPpARG4_MASK),
+ /* GSOCKOPT */ (OPpARG4_MASK),
+ /* SSOCKOPT */ (OPpARG4_MASK),
+ /* GETSOCKNAME */ (OPpARG1_MASK),
+ /* GETPEERNAME */ (OPpARG1_MASK),
+ /* LSTAT */ (OPpARG1_MASK),
+ /* STAT */ (OPpARG1_MASK),
+ /* FTRREAD */ (OPpARG1_MASK|OPpFT_ACCESS|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTRWRITE */ (OPpARG1_MASK|OPpFT_ACCESS|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTREXEC */ (OPpARG1_MASK|OPpFT_ACCESS|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTEREAD */ (OPpARG1_MASK|OPpFT_ACCESS|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTEWRITE */ (OPpARG1_MASK|OPpFT_ACCESS|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTEEXEC */ (OPpARG1_MASK|OPpFT_ACCESS|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTIS */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTSIZE */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTMTIME */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTATIME */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTCTIME */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTROWNED */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTEOWNED */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTZERO */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTSOCK */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTCHR */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTBLK */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTFILE */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTDIR */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTPIPE */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTSUID */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTSGID */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTSVTX */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTLINK */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTTTY */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTTEXT */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* FTBINARY */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t),
+ /* CHDIR */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* CHOWN */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* CHROOT */ (OPpARG1_MASK|OPpTARGET_MY),
+ /* UNLINK */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* CHMOD */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* UTIME */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* RENAME */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* LINK */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* SYMLINK */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* READLINK */ (OPpARG1_MASK),
+ /* MKDIR */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* RMDIR */ (OPpARG1_MASK|OPpTARGET_MY),
+ /* OPEN_DIR */ (OPpARG4_MASK),
+ /* READDIR */ (OPpARG1_MASK),
+ /* TELLDIR */ (OPpARG1_MASK),
+ /* SEEKDIR */ (OPpARG4_MASK),
+ /* REWINDDIR */ (OPpARG1_MASK),
+ /* CLOSEDIR */ (OPpARG1_MASK),
+ /* FORK */ (0),
+ /* WAIT */ (OPpTARGET_MY),
+ /* WAITPID */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* SYSTEM */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* EXEC */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* KILL */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* GETPPID */ (OPpTARGET_MY),
+ /* GETPGRP */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* SETPGRP */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* GETPRIORITY */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* SETPRIORITY */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* TIME */ (OPpTARGET_MY),
+ /* TMS */ (0),
+ /* LOCALTIME */ (OPpARG1_MASK),
+ /* GMTIME */ (OPpARG4_MASK),
+ /* ALARM */ (OPpARG1_MASK),
+ /* SLEEP */ (OPpARG4_MASK|OPpTARGET_MY),
+ /* SHMGET */ (OPpARG4_MASK),
+ /* SHMCTL */ (OPpARG4_MASK),
+ /* SHMREAD */ (OPpARG4_MASK),
+ /* SHMWRITE */ (OPpARG4_MASK),
+ /* MSGGET */ (OPpARG4_MASK),
+ /* MSGCTL */ (OPpARG4_MASK),
+ /* MSGSND */ (OPpARG4_MASK),
+ /* MSGRCV */ (OPpARG4_MASK),
+ /* SEMOP */ (OPpARG4_MASK),
+ /* SEMGET */ (OPpARG4_MASK),
+ /* SEMCTL */ (OPpARG4_MASK),
+ /* REQUIRE */ (OPpARG1_MASK),
+ /* DOFILE */ (OPpARG1_MASK),
+ /* HINTSEVAL */ (0),
+ /* ENTEREVAL */ (OPpARG1_MASK|OPpEVAL_HAS_HH|OPpEVAL_UNICODE|OPpEVAL_BYTES|OPpEVAL_COPHH|OPpEVAL_RE_REPARSING),
+ /* LEAVEEVAL */ (OPpARG1_MASK|OPpREFCOUNTED),
+ /* ENTERTRY */ (OPpARG1_MASK),
+ /* LEAVETRY */ (0),
+ /* GHBYNAME */ (OPpARG1_MASK),
+ /* GHBYADDR */ (OPpARG4_MASK),
+ /* GHOSTENT */ (0),
+ /* GNBYNAME */ (OPpARG1_MASK),
+ /* GNBYADDR */ (OPpARG4_MASK),
+ /* GNETENT */ (0),
+ /* GPBYNAME */ (OPpARG1_MASK),
+ /* GPBYNUMBER */ (OPpARG4_MASK),
+ /* GPROTOENT */ (0),
+ /* GSBYNAME */ (OPpARG4_MASK),
+ /* GSBYPORT */ (OPpARG4_MASK),
+ /* GSERVENT */ (0),
+ /* SHOSTENT */ (OPpARG1_MASK),
+ /* SNETENT */ (OPpARG1_MASK),
+ /* SPROTOENT */ (OPpARG1_MASK),
+ /* SSERVENT */ (OPpARG1_MASK),
+ /* EHOSTENT */ (0),
+ /* ENETENT */ (0),
+ /* EPROTOENT */ (0),
+ /* ESERVENT */ (0),
+ /* GPWNAM */ (OPpARG1_MASK),
+ /* GPWUID */ (OPpARG1_MASK),
+ /* GPWENT */ (0),
+ /* SPWENT */ (0),
+ /* EPWENT */ (0),
+ /* GGRNAM */ (OPpARG1_MASK),
+ /* GGRGID */ (OPpARG1_MASK),
+ /* GGRENT */ (0),
+ /* SGRENT */ (0),
+ /* EGRENT */ (0),
+ /* GETLOGIN */ (0),
+ /* SYSCALL */ (OPpARG4_MASK),
+ /* LOCK */ (OPpARG1_MASK),
+ /* ONCE */ (OPpARG1_MASK),
+ /* CUSTOM */ (0xff),
+ /* COREARGS */ (OPpCOREARGS_DEREF1|OPpCOREARGS_DEREF2|OPpCOREARGS_SCALARMOD|OPpCOREARGS_PUSHMARK),
+ /* RUNCV */ (OPpOFFBYONE),
+ /* FC */ (OPpARG1_MASK),
+ /* PADCV */ (0),
+ /* INTROCV */ (0),
+ /* CLONECV */ (0),
+ /* PADRANGE */ (OPpPADRANGE_COUNTMASK|OPpLVAL_INTRO),
+ /* REFASSIGN */ (OPpARG2_MASK|OPpLVREF_ELEM|OPpLVREF_ITER|OPpLVREF_TYPE|OPpPAD_STATE|OPpLVAL_INTRO),
+ /* LVREF */ (OPpARG1_MASK|OPpLVREF_ELEM|OPpLVREF_ITER|OPpLVREF_TYPE|OPpPAD_STATE|OPpLVAL_INTRO),
+ /* LVREFSLICE */ (OPpLVAL_INTRO),
+ /* LVAVREF */ (OPpARG1_MASK|OPpPAD_STATE|OPpLVAL_INTRO),
+ /* ANONCONST */ (OPpARG1_MASK),
+
+};
+
+# endif /* !DOINIT */
+#endif /* !PERL_GLOBAL_STRUCT_INIT */
+
+END_EXTERN_C
+
+
+
+/* ex: set ro: */