This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Fix error in tryAMAGICunDEREF() introduced in 25a9ffce153b0e67.
[perl5.git] / opcode.h
CommitLineData
37442d52
RGS
1/* -*- buffer-read-only: t -*-
2 *
d6376244
JH
3 * opcode.h
4 *
5b9081af
NC
5 * Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
6 * 2001, 2002, 2003, 2004, 2005, 2006, 2007 by Larry Wall and others
d6376244
JH
7 *
8 * You may distribute under the terms of either the GNU General Public
9 * License or the Artistic License, as specified in the README file.
10 *
11 * !!!!!!! DO NOT EDIT THIS FILE !!!!!!!
d006332c
FC
12 * This file is built by regen/opcode.pl from its data. Any changes made
13 * here will be lost!
d6376244 14 */
a27f85b3 15
27da23d5
JH
16#ifndef PERL_GLOBAL_STRUCT_INIT
17
864dbfa3
GS
18#define Perl_pp_i_preinc Perl_pp_preinc
19#define Perl_pp_i_predec Perl_pp_predec
20#define Perl_pp_i_postinc Perl_pp_postinc
21#define Perl_pp_i_postdec Perl_pp_postdec
748a9306 22
65bca31a
NC
23PERL_PPDEF(Perl_unimplemented_op)
24
73c4f7a1
GS
25START_EXTERN_C
26
4a36906c
RGS
27#define OP_NAME(o) ((o)->op_type == OP_CUSTOM ? custom_op_name(o) : \
28 PL_op_name[(o)->op_type])
29#define OP_DESC(o) ((o)->op_type == OP_CUSTOM ? custom_op_desc(o) : \
30 PL_op_desc[(o)->op_type])
438c221d 31
79072805 32#ifndef DOINIT
27da23d5 33EXTCONST char* const PL_op_name[];
79072805 34#else
27da23d5 35EXTCONST char* const PL_op_name[] = {
c07a80fd 36 "null",
37 "stub",
38 "scalar",
39 "pushmark",
40 "wantarray",
41 "const",
42 "gvsv",
43 "gv",
44 "gelem",
45 "padsv",
46 "padav",
47 "padhv",
48 "padany",
49 "pushre",
50 "rv2gv",
51 "rv2sv",
52 "av2arylen",
53 "rv2cv",
54 "anoncode",
55 "prototype",
56 "refgen",
57 "srefgen",
58 "ref",
59 "bless",
60 "backtick",
61 "glob",
62 "readline",
63 "rcatline",
64 "regcmaybe",
2cd61cdb 65 "regcreset",
c07a80fd 66 "regcomp",
67 "match",
8782bef2 68 "qr",
c07a80fd 69 "subst",
70 "substcont",
71 "trans",
72 "sassign",
73 "aassign",
74 "chop",
75 "schop",
76 "chomp",
77 "schomp",
78 "defined",
79 "undef",
80 "study",
81 "pos",
82 "preinc",
83 "i_preinc",
84 "predec",
85 "i_predec",
86 "postinc",
87 "i_postinc",
88 "postdec",
89 "i_postdec",
90 "pow",
91 "multiply",
92 "i_multiply",
93 "divide",
94 "i_divide",
95 "modulo",
96 "i_modulo",
97 "repeat",
98 "add",
99 "i_add",
100 "subtract",
101 "i_subtract",
102 "concat",
103 "stringify",
104 "left_shift",
105 "right_shift",
106 "lt",
107 "i_lt",
108 "gt",
109 "i_gt",
110 "le",
111 "i_le",
112 "ge",
113 "i_ge",
114 "eq",
115 "i_eq",
116 "ne",
117 "i_ne",
118 "ncmp",
119 "i_ncmp",
120 "slt",
121 "sgt",
122 "sle",
123 "sge",
124 "seq",
125 "sne",
126 "scmp",
127 "bit_and",
128 "bit_xor",
129 "bit_or",
130 "negate",
131 "i_negate",
132 "not",
133 "complement",
fdecdb95 134 "smartmatch",
c07a80fd 135 "atan2",
136 "sin",
137 "cos",
138 "rand",
139 "srand",
140 "exp",
141 "log",
142 "sqrt",
143 "int",
144 "hex",
145 "oct",
146 "abs",
147 "length",
148 "substr",
149 "vec",
150 "index",
151 "rindex",
152 "sprintf",
153 "formline",
154 "ord",
155 "chr",
156 "crypt",
157 "ucfirst",
158 "lcfirst",
159 "uc",
160 "lc",
161 "quotemeta",
162 "rv2av",
163 "aelemfast",
164 "aelem",
165 "aslice",
878d132a
NC
166 "aeach",
167 "akeys",
168 "avalues",
c07a80fd 169 "each",
170 "values",
171 "keys",
172 "delete",
173 "exists",
174 "rv2hv",
175 "helem",
176 "hslice",
2e0eeeaa 177 "boolkeys",
c07a80fd 178 "unpack",
179 "pack",
180 "split",
181 "join",
182 "list",
183 "lslice",
184 "anonlist",
185 "anonhash",
186 "splice",
187 "push",
188 "pop",
189 "shift",
190 "unshift",
191 "sort",
192 "reverse",
193 "grepstart",
194 "grepwhile",
195 "mapstart",
196 "mapwhile",
197 "range",
198 "flip",
199 "flop",
200 "and",
201 "or",
202 "xor",
fdecdb95 203 "dor",
c07a80fd 204 "cond_expr",
205 "andassign",
206 "orassign",
fdecdb95 207 "dorassign",
c07a80fd 208 "method",
209 "entersub",
210 "leavesub",
cd06dffe 211 "leavesublv",
c07a80fd 212 "caller",
213 "warn",
214 "die",
215 "reset",
216 "lineseq",
217 "nextstate",
218 "dbstate",
219 "unstack",
220 "enter",
221 "leave",
222 "scope",
223 "enteriter",
224 "iter",
225 "enterloop",
226 "leaveloop",
227 "return",
228 "last",
229 "next",
230 "redo",
231 "dump",
232 "goto",
233 "exit",
fdecdb95
NC
234 "method_named",
235 "entergiven",
236 "leavegiven",
237 "enterwhen",
238 "leavewhen",
239 "break",
240 "continue",
c07a80fd 241 "open",
242 "close",
243 "pipe_op",
244 "fileno",
245 "umask",
246 "binmode",
247 "tie",
248 "untie",
249 "tied",
250 "dbmopen",
251 "dbmclose",
252 "sselect",
253 "select",
254 "getc",
255 "read",
256 "enterwrite",
257 "leavewrite",
258 "prtf",
259 "print",
fdecdb95 260 "say",
c07a80fd 261 "sysopen",
137443ea 262 "sysseek",
c07a80fd 263 "sysread",
264 "syswrite",
c07a80fd 265 "eof",
266 "tell",
267 "seek",
268 "truncate",
269 "fcntl",
270 "ioctl",
271 "flock",
e71197e2
JC
272 "send",
273 "recv",
c07a80fd 274 "socket",
275 "sockpair",
276 "bind",
277 "connect",
278 "listen",
279 "accept",
280 "shutdown",
281 "gsockopt",
282 "ssockopt",
283 "getsockname",
284 "getpeername",
285 "lstat",
286 "stat",
287 "ftrread",
288 "ftrwrite",
289 "ftrexec",
290 "fteread",
291 "ftewrite",
292 "fteexec",
293 "ftis",
c07a80fd 294 "ftsize",
295 "ftmtime",
296 "ftatime",
297 "ftctime",
7834bb7e
NC
298 "ftrowned",
299 "fteowned",
300 "ftzero",
c07a80fd 301 "ftsock",
302 "ftchr",
303 "ftblk",
304 "ftfile",
305 "ftdir",
306 "ftpipe",
c07a80fd 307 "ftsuid",
308 "ftsgid",
309 "ftsvtx",
7834bb7e 310 "ftlink",
c07a80fd 311 "fttty",
312 "fttext",
313 "ftbinary",
314 "chdir",
315 "chown",
316 "chroot",
317 "unlink",
318 "chmod",
319 "utime",
320 "rename",
321 "link",
322 "symlink",
323 "readlink",
324 "mkdir",
325 "rmdir",
326 "open_dir",
327 "readdir",
328 "telldir",
329 "seekdir",
330 "rewinddir",
331 "closedir",
332 "fork",
333 "wait",
334 "waitpid",
335 "system",
336 "exec",
337 "kill",
338 "getppid",
339 "getpgrp",
340 "setpgrp",
341 "getpriority",
342 "setpriority",
343 "time",
344 "tms",
345 "localtime",
346 "gmtime",
347 "alarm",
348 "sleep",
349 "shmget",
350 "shmctl",
351 "shmread",
352 "shmwrite",
353 "msgget",
354 "msgctl",
355 "msgsnd",
356 "msgrcv",
7834bb7e 357 "semop",
c07a80fd 358 "semget",
359 "semctl",
c07a80fd 360 "require",
361 "dofile",
996c9baa 362 "hintseval",
c07a80fd 363 "entereval",
364 "leaveeval",
365 "entertry",
366 "leavetry",
367 "ghbyname",
368 "ghbyaddr",
369 "ghostent",
370 "gnbyname",
371 "gnbyaddr",
372 "gnetent",
373 "gpbyname",
374 "gpbynumber",
375 "gprotoent",
376 "gsbyname",
377 "gsbyport",
378 "gservent",
379 "shostent",
380 "snetent",
381 "sprotoent",
382 "sservent",
383 "ehostent",
384 "enetent",
385 "eprotoent",
386 "eservent",
387 "gpwnam",
388 "gpwuid",
389 "gpwent",
390 "spwent",
391 "epwent",
392 "ggrnam",
393 "ggrgid",
394 "ggrent",
395 "sgrent",
396 "egrent",
397 "getlogin",
398 "syscall",
c0329465 399 "lock",
c5917253 400 "once",
438c221d 401 "custom",
cba5a3b0
DG
402 "reach",
403 "rkeys",
404 "rvalues",
6342d5c5 405 "transr",
c07a80fd 406};
407#endif
408
409#ifndef DOINIT
27da23d5 410EXTCONST char* const PL_op_desc[];
c07a80fd 411#else
27da23d5 412EXTCONST char* const PL_op_desc[] = {
79072805 413 "null operation",
93a17b20
LW
414 "stub",
415 "scalar",
79072805
LW
416 "pushmark",
417 "wantarray",
79072805 418 "constant item",
79072805
LW
419 "scalar variable",
420 "glob value",
c07a80fd 421 "glob elem",
93a17b20
LW
422 "private variable",
423 "private array",
424 "private hash",
f1612b5c 425 "private value",
79072805
LW
426 "push regexp",
427 "ref-to-glob cast",
b89fed5f 428 "scalar dereference",
79072805 429 "array length",
b89fed5f 430 "subroutine dereference",
a0d0e21e 431 "anonymous subroutine",
c07a80fd 432 "subroutine prototype",
8990e307 433 "reference constructor",
dfa0f641 434 "single ref constructor",
79072805
LW
435 "reference-type operator",
436 "bless",
b3f4d674 437 "quoted execution (``, qx)",
79072805
LW
438 "glob",
439 "<HANDLE>",
440 "append I/O operator",
f1612b5c
GS
441 "regexp internal guard",
442 "regexp internal reset",
79072805 443 "regexp compilation",
42d38218
MS
444 "pattern match (m//)",
445 "pattern quote (qr//)",
446 "substitution (s///)",
f1612b5c
GS
447 "substitution iterator",
448 "transliteration (tr///)",
79072805
LW
449 "scalar assignment",
450 "list assignment",
79072805 451 "chop",
a0d0e21e 452 "scalar chop",
f1612b5c
GS
453 "chomp",
454 "scalar chomp",
79072805
LW
455 "defined operator",
456 "undef operator",
457 "study",
a0d0e21e 458 "match position",
42d38218
MS
459 "preincrement (++)",
460 "integer preincrement (++)",
461 "predecrement (--)",
462 "integer predecrement (--)",
463 "postincrement (++)",
464 "integer postincrement (++)",
465 "postdecrement (--)",
466 "integer postdecrement (--)",
467 "exponentiation (**)",
468 "multiplication (*)",
469 "integer multiplication (*)",
470 "division (/)",
471 "integer division (/)",
472 "modulus (%)",
473 "integer modulus (%)",
474 "repeat (x)",
475 "addition (+)",
476 "integer addition (+)",
477 "subtraction (-)",
478 "integer subtraction (-)",
297b36dc 479 "concatenation (.) or string",
a0d0e21e 480 "string",
42d38218
MS
481 "left bitshift (<<)",
482 "right bitshift (>>)",
483 "numeric lt (<)",
484 "integer lt (<)",
485 "numeric gt (>)",
486 "integer gt (>)",
487 "numeric le (<=)",
488 "integer le (<=)",
489 "numeric ge (>=)",
490 "integer ge (>=)",
491 "numeric eq (==)",
492 "integer eq (==)",
493 "numeric ne (!=)",
494 "integer ne (!=)",
495 "numeric comparison (<=>)",
496 "integer comparison (<=>)",
79072805
LW
497 "string lt",
498 "string gt",
499 "string le",
500 "string ge",
501 "string eq",
502 "string ne",
42d38218
MS
503 "string comparison (cmp)",
504 "bitwise and (&)",
505 "bitwise xor (^)",
506 "bitwise or (|)",
f1612b5c
GS
507 "negation (-)",
508 "integer negation (-)",
79072805 509 "not",
42d38218 510 "1's complement (~)",
fdecdb95 511 "smart match",
79072805
LW
512 "atan2",
513 "sin",
514 "cos",
515 "rand",
516 "srand",
517 "exp",
518 "log",
519 "sqrt",
520 "int",
521 "hex",
522 "oct",
463ee0b2 523 "abs",
79072805
LW
524 "length",
525 "substr",
526 "vec",
527 "index",
528 "rindex",
529 "sprintf",
530 "formline",
531 "ord",
463ee0b2 532 "chr",
79072805 533 "crypt",
42d38218
MS
534 "ucfirst",
535 "lcfirst",
536 "uc",
537 "lc",
538 "quotemeta",
f1612b5c
GS
539 "array dereference",
540 "constant array element",
79072805
LW
541 "array element",
542 "array slice",
878d132a
NC
543 "each on array",
544 "keys on array",
545 "values on array",
79072805
LW
546 "each",
547 "values",
548 "keys",
549 "delete",
42d38218 550 "exists",
f1612b5c
GS
551 "hash dereference",
552 "hash element",
aa689395 553 "hash slice",
2e0eeeaa 554 "boolkeys",
79072805
LW
555 "unpack",
556 "pack",
557 "split",
297b36dc 558 "join or string",
79072805
LW
559 "list",
560 "list slice",
42d38218
MS
561 "anonymous list ([])",
562 "anonymous hash ({})",
79072805
LW
563 "splice",
564 "push",
565 "pop",
566 "shift",
567 "unshift",
568 "sort",
569 "reverse",
570 "grep",
571 "grep iterator",
a0d0e21e
LW
572 "map",
573 "map iterator",
79072805
LW
574 "flipflop",
575 "range (or flip)",
576 "range (or flop)",
42d38218
MS
577 "logical and (&&)",
578 "logical or (||)",
a0d0e21e 579 "logical xor",
fdecdb95 580 "defined or (//)",
f1612b5c 581 "conditional expression",
42d38218
MS
582 "logical and assignment (&&=)",
583 "logical or assignment (||=)",
fdecdb95 584 "defined or assignment (//=)",
79072805
LW
585 "method lookup",
586 "subroutine entry",
587 "subroutine exit",
78f9721b 588 "lvalue subroutine return",
79072805
LW
589 "caller",
590 "warn",
591 "die",
f1612b5c 592 "symbol reset",
79072805
LW
593 "line sequence",
594 "next statement",
93a17b20 595 "debug next statement",
e9c54c90 596 "iteration finalizer",
79072805
LW
597 "block entry",
598 "block exit",
463ee0b2 599 "block",
79072805
LW
600 "foreach loop entry",
601 "foreach loop iterator",
602 "loop entry",
603 "loop exit",
604 "return",
605 "last",
606 "next",
607 "redo",
608 "dump",
609 "goto",
610 "exit",
fdecdb95
NC
611 "method with known name",
612 "given()",
613 "leave given block",
614 "when()",
615 "leave when block",
616 "break",
617 "continue",
79072805
LW
618 "open",
619 "close",
620 "pipe",
621 "fileno",
622 "umask",
623 "binmode",
463ee0b2
LW
624 "tie",
625 "untie",
c07a80fd 626 "tied",
79072805
LW
627 "dbmopen",
628 "dbmclose",
629 "select system call",
630 "select",
631 "getc",
632 "read",
633 "write",
634 "write exit",
463ee0b2 635 "printf",
79072805 636 "print",
fdecdb95 637 "say",
c07a80fd 638 "sysopen",
137443ea 639 "sysseek",
79072805
LW
640 "sysread",
641 "syswrite",
79072805
LW
642 "eof",
643 "tell",
644 "seek",
645 "truncate",
646 "fcntl",
647 "ioctl",
648 "flock",
e71197e2
JC
649 "send",
650 "recv",
79072805
LW
651 "socket",
652 "socketpair",
653 "bind",
654 "connect",
655 "listen",
656 "accept",
657 "shutdown",
658 "getsockopt",
659 "setsockopt",
660 "getsockname",
661 "getpeername",
662 "lstat",
663 "stat",
664 "-R",
665 "-W",
666 "-X",
667 "-r",
668 "-w",
669 "-x",
670 "-e",
79072805
LW
671 "-s",
672 "-M",
673 "-A",
674 "-C",
7834bb7e
NC
675 "-O",
676 "-o",
677 "-z",
79072805
LW
678 "-S",
679 "-c",
680 "-b",
681 "-f",
682 "-d",
683 "-p",
79072805
LW
684 "-u",
685 "-g",
686 "-k",
7834bb7e 687 "-l",
79072805
LW
688 "-t",
689 "-T",
690 "-B",
691 "chdir",
692 "chown",
693 "chroot",
694 "unlink",
695 "chmod",
696 "utime",
697 "rename",
698 "link",
699 "symlink",
700 "readlink",
701 "mkdir",
702 "rmdir",
703 "opendir",
704 "readdir",
705 "telldir",
706 "seekdir",
707 "rewinddir",
708 "closedir",
709 "fork",
710 "wait",
711 "waitpid",
712 "system",
713 "exec",
714 "kill",
715 "getppid",
716 "getpgrp",
717 "setpgrp",
718 "getpriority",
719 "setpriority",
720 "time",
721 "times",
722 "localtime",
723 "gmtime",
724 "alarm",
725 "sleep",
726 "shmget",
727 "shmctl",
728 "shmread",
729 "shmwrite",
730 "msgget",
731 "msgctl",
732 "msgsnd",
733 "msgrcv",
7834bb7e 734 "semop",
79072805
LW
735 "semget",
736 "semctl",
79072805 737 "require",
b3f4d674 738 "do \"file\"",
996c9baa 739 "eval hints",
b3f4d674
GS
740 "eval \"string\"",
741 "eval \"string\" exit",
42d38218 742 "eval {block}",
f1612b5c 743 "eval {block} exit",
79072805
LW
744 "gethostbyname",
745 "gethostbyaddr",
746 "gethostent",
747 "getnetbyname",
748 "getnetbyaddr",
749 "getnetent",
750 "getprotobyname",
751 "getprotobynumber",
752 "getprotoent",
753 "getservbyname",
754 "getservbyport",
755 "getservent",
756 "sethostent",
757 "setnetent",
758 "setprotoent",
759 "setservent",
760 "endhostent",
761 "endnetent",
762 "endprotoent",
763 "endservent",
764 "getpwnam",
765 "getpwuid",
766 "getpwent",
767 "setpwent",
768 "endpwent",
769 "getgrnam",
770 "getgrgid",
771 "getgrent",
772 "setgrent",
773 "endgrent",
774 "getlogin",
775 "syscall",
c0329465 776 "lock",
c5917253 777 "once",
438c221d 778 "unknown custom operator",
cba5a3b0
DG
779 "each on reference",
780 "keys on reference",
781 "values on reference",
6342d5c5 782 "transliteration (tr///)",
79072805
LW
783};
784#endif
785
73c4f7a1
GS
786END_EXTERN_C
787
27da23d5
JH
788#endif /* !PERL_GLOBAL_STRUCT_INIT */
789
73c4f7a1
GS
790START_EXTERN_C
791
27da23d5 792#ifdef PERL_GLOBAL_STRUCT_INIT
97aff369 793# define PERL_PPADDR_INITED
27da23d5 794static const Perl_ppaddr_t Gppaddr[]
79072805 795#else
27da23d5 796# ifndef PERL_GLOBAL_STRUCT
97aff369 797# define PERL_PPADDR_INITED
27da23d5
JH
798EXT Perl_ppaddr_t PL_ppaddr[] /* or perlvars.h */
799# endif
800#endif /* PERL_GLOBAL_STRUCT */
801#if (defined(DOINIT) && !defined(PERL_GLOBAL_STRUCT)) || defined(PERL_GLOBAL_STRUCT_INIT)
97aff369 802# define PERL_PPADDR_INITED
27da23d5 803= {
ef69c8fc
BM
804 Perl_pp_null,
805 Perl_pp_stub,
806 Perl_pp_null, /* Perl_pp_scalar */
807 Perl_pp_pushmark,
808 Perl_pp_wantarray,
809 Perl_pp_const,
810 Perl_pp_gvsv,
811 Perl_pp_gv,
812 Perl_pp_gelem,
813 Perl_pp_padsv,
814 Perl_pp_padav,
815 Perl_pp_padhv,
816 Perl_unimplemented_op, /* Perl_pp_padany */
817 Perl_pp_pushre,
818 Perl_pp_rv2gv,
819 Perl_pp_rv2sv,
820 Perl_pp_av2arylen,
821 Perl_pp_rv2cv,
822 Perl_pp_anoncode,
823 Perl_pp_prototype,
824 Perl_pp_refgen,
825 Perl_pp_srefgen,
826 Perl_pp_ref,
827 Perl_pp_bless,
828 Perl_pp_backtick,
829 Perl_pp_glob,
830 Perl_pp_readline,
831 Perl_pp_rcatline,
832 Perl_pp_null, /* Perl_pp_regcmaybe */
833 Perl_pp_regcreset,
834 Perl_pp_regcomp,
835 Perl_pp_match,
836 Perl_pp_qr,
837 Perl_pp_subst,
838 Perl_pp_substcont,
6342d5c5 839 Perl_pp_trans, /* Perl_pp_trans */
ef69c8fc
BM
840 Perl_pp_sassign,
841 Perl_pp_aassign,
842 Perl_pp_chop,
843 Perl_pp_schop,
844 Perl_pp_chomp,
845 Perl_pp_schomp,
846 Perl_pp_defined,
847 Perl_pp_undef,
848 Perl_pp_study,
849 Perl_pp_pos,
850 Perl_pp_preinc,
851 Perl_pp_i_preinc,
852 Perl_pp_predec,
853 Perl_pp_i_predec,
854 Perl_pp_postinc,
855 Perl_pp_i_postinc,
856 Perl_pp_postdec,
857 Perl_pp_i_postdec,
858 Perl_pp_pow,
859 Perl_pp_multiply,
860 Perl_pp_i_multiply,
861 Perl_pp_divide,
862 Perl_pp_i_divide,
863 Perl_pp_modulo,
864 Perl_pp_i_modulo,
865 Perl_pp_repeat,
866 Perl_pp_add,
867 Perl_pp_i_add,
868 Perl_pp_subtract,
869 Perl_pp_i_subtract,
870 Perl_pp_concat,
871 Perl_pp_stringify,
872 Perl_pp_left_shift,
873 Perl_pp_right_shift,
874 Perl_pp_lt,
875 Perl_pp_i_lt,
876 Perl_pp_gt,
877 Perl_pp_i_gt,
878 Perl_pp_le,
879 Perl_pp_i_le,
880 Perl_pp_ge,
881 Perl_pp_i_ge,
882 Perl_pp_eq,
883 Perl_pp_i_eq,
884 Perl_pp_ne,
885 Perl_pp_i_ne,
886 Perl_pp_ncmp,
887 Perl_pp_i_ncmp,
888 Perl_pp_sle, /* Perl_pp_slt */
889 Perl_pp_sle, /* Perl_pp_sgt */
890 Perl_pp_sle,
891 Perl_pp_sle, /* Perl_pp_sge */
892 Perl_pp_seq,
893 Perl_pp_sne,
894 Perl_pp_scmp,
895 Perl_pp_bit_and,
896 Perl_pp_bit_or, /* Perl_pp_bit_xor */
897 Perl_pp_bit_or,
898 Perl_pp_negate,
899 Perl_pp_i_negate,
900 Perl_pp_not,
901 Perl_pp_complement,
902 Perl_pp_smartmatch,
903 Perl_pp_atan2,
904 Perl_pp_sin,
905 Perl_pp_sin, /* Perl_pp_cos */
906 Perl_pp_rand,
907 Perl_pp_srand,
908 Perl_pp_sin, /* Perl_pp_exp */
909 Perl_pp_sin, /* Perl_pp_log */
910 Perl_pp_sin, /* Perl_pp_sqrt */
911 Perl_pp_int,
912 Perl_pp_oct, /* Perl_pp_hex */
913 Perl_pp_oct,
914 Perl_pp_abs,
915 Perl_pp_length,
916 Perl_pp_substr,
917 Perl_pp_vec,
918 Perl_pp_index,
919 Perl_pp_index, /* Perl_pp_rindex */
920 Perl_pp_sprintf,
921 Perl_pp_formline,
922 Perl_pp_ord,
923 Perl_pp_chr,
924 Perl_pp_crypt,
925 Perl_pp_ucfirst,
926 Perl_pp_ucfirst, /* Perl_pp_lcfirst */
927 Perl_pp_uc,
928 Perl_pp_lc,
929 Perl_pp_quotemeta,
930 Perl_pp_rv2av,
931 Perl_pp_aelemfast,
932 Perl_pp_aelem,
933 Perl_pp_aslice,
934 Perl_pp_aeach,
935 Perl_pp_akeys,
936 Perl_pp_akeys, /* Perl_pp_avalues */
937 Perl_pp_each,
938 Perl_do_kv, /* Perl_pp_values */
939 Perl_do_kv, /* Perl_pp_keys */
940 Perl_pp_delete,
941 Perl_pp_exists,
942 Perl_pp_rv2av, /* Perl_pp_rv2hv */
943 Perl_pp_helem,
944 Perl_pp_hslice,
945 Perl_pp_boolkeys,
946 Perl_pp_unpack,
947 Perl_pp_pack,
948 Perl_pp_split,
949 Perl_pp_join,
950 Perl_pp_list,
951 Perl_pp_lslice,
952 Perl_pp_anonlist,
953 Perl_pp_anonhash,
954 Perl_pp_splice,
955 Perl_pp_push,
956 Perl_pp_shift, /* Perl_pp_pop */
957 Perl_pp_shift,
958 Perl_pp_unshift,
959 Perl_pp_sort,
960 Perl_pp_reverse,
961 Perl_pp_grepstart,
962 Perl_pp_grepwhile,
963 Perl_unimplemented_op, /* Perl_pp_mapstart */
964 Perl_pp_mapwhile,
965 Perl_pp_range,
966 Perl_pp_flip,
967 Perl_pp_flop,
968 Perl_pp_and,
969 Perl_pp_or,
970 Perl_pp_xor,
971 Perl_pp_defined, /* Perl_pp_dor */
972 Perl_pp_cond_expr,
973 Perl_pp_and, /* Perl_pp_andassign */
974 Perl_pp_or, /* Perl_pp_orassign */
975 Perl_pp_defined, /* Perl_pp_dorassign */
976 Perl_pp_method,
977 Perl_pp_entersub,
978 Perl_pp_leavesub,
979 Perl_pp_leavesublv,
980 Perl_pp_caller,
981 Perl_pp_warn,
982 Perl_pp_die,
983 Perl_pp_reset,
984 Perl_pp_null, /* Perl_pp_lineseq */
985 Perl_pp_nextstate,
986 Perl_pp_dbstate,
987 Perl_pp_unstack,
988 Perl_pp_enter,
989 Perl_pp_leave,
990 Perl_pp_null, /* Perl_pp_scope */
991 Perl_pp_enteriter,
992 Perl_pp_iter,
993 Perl_pp_enterloop,
994 Perl_pp_leaveloop,
995 Perl_pp_return,
996 Perl_pp_last,
997 Perl_pp_next,
998 Perl_pp_redo,
999 Perl_pp_goto, /* Perl_pp_dump */
1000 Perl_pp_goto,
1001 Perl_pp_exit,
1002 Perl_pp_method_named,
1003 Perl_pp_entergiven,
1004 Perl_pp_leavegiven,
1005 Perl_pp_enterwhen,
1006 Perl_pp_leavewhen,
1007 Perl_pp_break,
1008 Perl_pp_continue,
1009 Perl_pp_open,
1010 Perl_pp_close,
1011 Perl_pp_pipe_op,
1012 Perl_pp_fileno,
1013 Perl_pp_umask,
1014 Perl_pp_binmode,
1015 Perl_pp_tie,
1016 Perl_pp_untie,
1017 Perl_pp_tied,
1018 Perl_pp_dbmopen,
1019 Perl_pp_untie, /* Perl_pp_dbmclose */
1020 Perl_pp_sselect,
1021 Perl_pp_select,
1022 Perl_pp_getc,
1023 Perl_pp_sysread, /* Perl_pp_read */
1024 Perl_pp_enterwrite,
1025 Perl_pp_leavewrite,
1026 Perl_pp_prtf,
1027 Perl_pp_print,
1028 Perl_pp_print, /* Perl_pp_say */
1029 Perl_pp_sysopen,
1030 Perl_pp_sysseek,
1031 Perl_pp_sysread,
1032 Perl_pp_send, /* Perl_pp_syswrite */
1033 Perl_pp_eof,
1034 Perl_pp_tell,
1035 Perl_pp_sysseek, /* Perl_pp_seek */
1036 Perl_pp_truncate,
1037 Perl_pp_ioctl, /* Perl_pp_fcntl */
1038 Perl_pp_ioctl,
1039 Perl_pp_flock,
1040 Perl_pp_send,
1041 Perl_pp_sysread, /* Perl_pp_recv */
1042 Perl_pp_socket,
1043 Perl_pp_sockpair,
1044 Perl_pp_bind,
1045 Perl_pp_connect,
1046 Perl_pp_listen,
1047 Perl_pp_accept,
1048 Perl_pp_shutdown,
1049 Perl_pp_ssockopt, /* Perl_pp_gsockopt */
1050 Perl_pp_ssockopt,
1051 Perl_pp_getpeername, /* Perl_pp_getsockname */
1052 Perl_pp_getpeername,
1053 Perl_pp_stat, /* Perl_pp_lstat */
1054 Perl_pp_stat,
1055 Perl_pp_ftrread,
1056 Perl_pp_ftrread, /* Perl_pp_ftrwrite */
1057 Perl_pp_ftrread, /* Perl_pp_ftrexec */
1058 Perl_pp_ftrread, /* Perl_pp_fteread */
1059 Perl_pp_ftrread, /* Perl_pp_ftewrite */
1060 Perl_pp_ftrread, /* Perl_pp_fteexec */
1061 Perl_pp_ftis,
1062 Perl_pp_ftis, /* Perl_pp_ftsize */
1063 Perl_pp_ftis, /* Perl_pp_ftmtime */
1064 Perl_pp_ftis, /* Perl_pp_ftatime */
1065 Perl_pp_ftis, /* Perl_pp_ftctime */
1066 Perl_pp_ftrowned,
1067 Perl_pp_ftrowned, /* Perl_pp_fteowned */
1068 Perl_pp_ftrowned, /* Perl_pp_ftzero */
1069 Perl_pp_ftrowned, /* Perl_pp_ftsock */
1070 Perl_pp_ftrowned, /* Perl_pp_ftchr */
1071 Perl_pp_ftrowned, /* Perl_pp_ftblk */
1072 Perl_pp_ftrowned, /* Perl_pp_ftfile */
1073 Perl_pp_ftrowned, /* Perl_pp_ftdir */
1074 Perl_pp_ftrowned, /* Perl_pp_ftpipe */
1075 Perl_pp_ftrowned, /* Perl_pp_ftsuid */
1076 Perl_pp_ftrowned, /* Perl_pp_ftsgid */
1077 Perl_pp_ftrowned, /* Perl_pp_ftsvtx */
1078 Perl_pp_ftlink,
1079 Perl_pp_fttty,
1080 Perl_pp_fttext,
1081 Perl_pp_fttext, /* Perl_pp_ftbinary */
1082 Perl_pp_chdir,
1083 Perl_pp_chown,
1084 Perl_pp_chroot,
1085 Perl_pp_chown, /* Perl_pp_unlink */
1086 Perl_pp_chown, /* Perl_pp_chmod */
1087 Perl_pp_chown, /* Perl_pp_utime */
1088 Perl_pp_rename,
1089 Perl_pp_link,
1090 Perl_pp_link, /* Perl_pp_symlink */
1091 Perl_pp_readlink,
1092 Perl_pp_mkdir,
1093 Perl_pp_rmdir,
1094 Perl_pp_open_dir,
1095 Perl_pp_readdir,
1096 Perl_pp_telldir,
1097 Perl_pp_seekdir,
1098 Perl_pp_rewinddir,
1099 Perl_pp_closedir,
1100 Perl_pp_fork,
1101 Perl_pp_wait,
1102 Perl_pp_waitpid,
1103 Perl_pp_system,
1104 Perl_pp_exec,
1105 Perl_pp_chown, /* Perl_pp_kill */
1106 Perl_pp_getppid,
1107 Perl_pp_getpgrp,
1108 Perl_pp_setpgrp,
1109 Perl_pp_getpriority,
1110 Perl_pp_setpriority,
1111 Perl_pp_time,
1112 Perl_pp_tms,
1113 Perl_pp_gmtime, /* Perl_pp_localtime */
1114 Perl_pp_gmtime,
1115 Perl_pp_alarm,
1116 Perl_pp_sleep,
1117 Perl_pp_semget, /* Perl_pp_shmget */
1118 Perl_pp_semctl, /* Perl_pp_shmctl */
1119 Perl_pp_shmwrite, /* Perl_pp_shmread */
1120 Perl_pp_shmwrite,
1121 Perl_pp_semget, /* Perl_pp_msgget */
1122 Perl_pp_semctl, /* Perl_pp_msgctl */
1123 Perl_pp_shmwrite, /* Perl_pp_msgsnd */
1124 Perl_pp_shmwrite, /* Perl_pp_msgrcv */
1125 Perl_pp_shmwrite, /* Perl_pp_semop */
1126 Perl_pp_semget,
1127 Perl_pp_semctl,
1128 Perl_pp_require,
1129 Perl_pp_require, /* Perl_pp_dofile */
1130 Perl_pp_hintseval,
1131 Perl_pp_entereval,
1132 Perl_pp_leaveeval,
1133 Perl_pp_entertry,
1134 Perl_pp_leavetry,
1135 Perl_pp_ghostent, /* Perl_pp_ghbyname */
1136 Perl_pp_ghostent, /* Perl_pp_ghbyaddr */
1137 Perl_pp_ghostent,
1138 Perl_pp_gnetent, /* Perl_pp_gnbyname */
1139 Perl_pp_gnetent, /* Perl_pp_gnbyaddr */
1140 Perl_pp_gnetent,
1141 Perl_pp_gprotoent, /* Perl_pp_gpbyname */
1142 Perl_pp_gprotoent, /* Perl_pp_gpbynumber */
1143 Perl_pp_gprotoent,
1144 Perl_pp_gservent, /* Perl_pp_gsbyname */
1145 Perl_pp_gservent, /* Perl_pp_gsbyport */
1146 Perl_pp_gservent,
1147 Perl_pp_shostent,
1148 Perl_pp_snetent,
1149 Perl_pp_sprotoent,
1150 Perl_pp_sservent,
1151 Perl_pp_ehostent,
1152 Perl_pp_enetent,
1153 Perl_pp_eprotoent,
1154 Perl_pp_eservent,
1155 Perl_pp_gpwent, /* Perl_pp_gpwnam */
1156 Perl_pp_gpwent, /* Perl_pp_gpwuid */
1157 Perl_pp_gpwent,
1158 Perl_pp_spwent,
1159 Perl_pp_epwent,
1160 Perl_pp_ggrent, /* Perl_pp_ggrnam */
1161 Perl_pp_ggrent, /* Perl_pp_ggrgid */
1162 Perl_pp_ggrent,
1163 Perl_pp_sgrent,
1164 Perl_pp_egrent,
1165 Perl_pp_getlogin,
1166 Perl_pp_syscall,
1167 Perl_pp_lock,
1168 Perl_pp_once,
1169 Perl_unimplemented_op, /* Perl_pp_custom */
cba5a3b0
DG
1170 Perl_pp_rkeys, /* Perl_pp_reach */
1171 Perl_pp_rkeys,
1172 Perl_pp_rkeys, /* Perl_pp_rvalues */
6342d5c5 1173 Perl_pp_trans, /* Perl_pp_transr */
27da23d5 1174}
79072805 1175#endif
97aff369 1176#ifdef PERL_PPADDR_INITED
27da23d5 1177;
97aff369 1178#endif
79072805 1179
27da23d5 1180#ifdef PERL_GLOBAL_STRUCT_INIT
97aff369 1181# define PERL_CHECK_INITED
27da23d5 1182static const Perl_check_t Gcheck[]
79072805 1183#else
27da23d5 1184# ifndef PERL_GLOBAL_STRUCT
97aff369 1185# define PERL_CHECK_INITED
27da23d5
JH
1186EXT Perl_check_t PL_check[] /* or perlvars.h */
1187# endif
1188#endif
1189#if (defined(DOINIT) && !defined(PERL_GLOBAL_STRUCT)) || defined(PERL_GLOBAL_STRUCT_INIT)
97aff369 1190# define PERL_CHECK_INITED
27da23d5 1191= {
ef69c8fc
BM
1192 Perl_ck_null, /* null */
1193 Perl_ck_null, /* stub */
1194 Perl_ck_fun, /* scalar */
1195 Perl_ck_null, /* pushmark */
1196 Perl_ck_null, /* wantarray */
1197 Perl_ck_svconst, /* const */
1198 Perl_ck_null, /* gvsv */
1199 Perl_ck_null, /* gv */
1200 Perl_ck_null, /* gelem */
1201 Perl_ck_null, /* padsv */
1202 Perl_ck_null, /* padav */
1203 Perl_ck_null, /* padhv */
1204 Perl_ck_null, /* padany */
1205 Perl_ck_null, /* pushre */
1206 Perl_ck_rvconst, /* rv2gv */
1207 Perl_ck_rvconst, /* rv2sv */
1208 Perl_ck_null, /* av2arylen */
1209 Perl_ck_rvconst, /* rv2cv */
1210 Perl_ck_anoncode, /* anoncode */
1211 Perl_ck_null, /* prototype */
1212 Perl_ck_spair, /* refgen */
1213 Perl_ck_null, /* srefgen */
1214 Perl_ck_fun, /* ref */
1215 Perl_ck_fun, /* bless */
1216 Perl_ck_open, /* backtick */
1217 Perl_ck_glob, /* glob */
1218 Perl_ck_readline, /* readline */
1219 Perl_ck_null, /* rcatline */
1220 Perl_ck_fun, /* regcmaybe */
1221 Perl_ck_fun, /* regcreset */
1222 Perl_ck_null, /* regcomp */
1223 Perl_ck_match, /* match */
1224 Perl_ck_match, /* qr */
1225 Perl_ck_match, /* subst */
1226 Perl_ck_null, /* substcont */
1227 Perl_ck_match, /* trans */
1228 Perl_ck_sassign, /* sassign */
1229 Perl_ck_null, /* aassign */
1230 Perl_ck_spair, /* chop */
1231 Perl_ck_null, /* schop */
1232 Perl_ck_spair, /* chomp */
1233 Perl_ck_null, /* schomp */
1234 Perl_ck_defined, /* defined */
1235 Perl_ck_lfun, /* undef */
1236 Perl_ck_fun, /* study */
1237 Perl_ck_lfun, /* pos */
1238 Perl_ck_lfun, /* preinc */
1239 Perl_ck_lfun, /* i_preinc */
1240 Perl_ck_lfun, /* predec */
1241 Perl_ck_lfun, /* i_predec */
1242 Perl_ck_lfun, /* postinc */
1243 Perl_ck_lfun, /* i_postinc */
1244 Perl_ck_lfun, /* postdec */
1245 Perl_ck_lfun, /* i_postdec */
1246 Perl_ck_null, /* pow */
1247 Perl_ck_null, /* multiply */
1248 Perl_ck_null, /* i_multiply */
1249 Perl_ck_null, /* divide */
1250 Perl_ck_null, /* i_divide */
1251 Perl_ck_null, /* modulo */
1252 Perl_ck_null, /* i_modulo */
1253 Perl_ck_repeat, /* repeat */
1254 Perl_ck_null, /* add */
1255 Perl_ck_null, /* i_add */
1256 Perl_ck_null, /* subtract */
1257 Perl_ck_null, /* i_subtract */
1258 Perl_ck_concat, /* concat */
1259 Perl_ck_fun, /* stringify */
1260 Perl_ck_bitop, /* left_shift */
1261 Perl_ck_bitop, /* right_shift */
1262 Perl_ck_null, /* lt */
1263 Perl_ck_null, /* i_lt */
1264 Perl_ck_null, /* gt */
1265 Perl_ck_null, /* i_gt */
1266 Perl_ck_null, /* le */
1267 Perl_ck_null, /* i_le */
1268 Perl_ck_null, /* ge */
1269 Perl_ck_null, /* i_ge */
1270 Perl_ck_null, /* eq */
1271 Perl_ck_null, /* i_eq */
1272 Perl_ck_null, /* ne */
1273 Perl_ck_null, /* i_ne */
1274 Perl_ck_null, /* ncmp */
1275 Perl_ck_null, /* i_ncmp */
1276 Perl_ck_null, /* slt */
1277 Perl_ck_null, /* sgt */
1278 Perl_ck_null, /* sle */
1279 Perl_ck_null, /* sge */
1280 Perl_ck_null, /* seq */
1281 Perl_ck_null, /* sne */
1282 Perl_ck_null, /* scmp */
1283 Perl_ck_bitop, /* bit_and */
1284 Perl_ck_bitop, /* bit_xor */
1285 Perl_ck_bitop, /* bit_or */
1286 Perl_ck_null, /* negate */
1287 Perl_ck_null, /* i_negate */
1288 Perl_ck_null, /* not */
1289 Perl_ck_bitop, /* complement */
1290 Perl_ck_smartmatch, /* smartmatch */
1291 Perl_ck_fun, /* atan2 */
1292 Perl_ck_fun, /* sin */
1293 Perl_ck_fun, /* cos */
1294 Perl_ck_fun, /* rand */
1295 Perl_ck_fun, /* srand */
1296 Perl_ck_fun, /* exp */
1297 Perl_ck_fun, /* log */
1298 Perl_ck_fun, /* sqrt */
1299 Perl_ck_fun, /* int */
1300 Perl_ck_fun, /* hex */
1301 Perl_ck_fun, /* oct */
1302 Perl_ck_fun, /* abs */
1303 Perl_ck_fun, /* length */
1304 Perl_ck_substr, /* substr */
1305 Perl_ck_fun, /* vec */
1306 Perl_ck_index, /* index */
1307 Perl_ck_index, /* rindex */
1308 Perl_ck_fun, /* sprintf */
1309 Perl_ck_fun, /* formline */
1310 Perl_ck_fun, /* ord */
1311 Perl_ck_fun, /* chr */
1312 Perl_ck_fun, /* crypt */
1313 Perl_ck_fun, /* ucfirst */
1314 Perl_ck_fun, /* lcfirst */
1315 Perl_ck_fun, /* uc */
1316 Perl_ck_fun, /* lc */
1317 Perl_ck_fun, /* quotemeta */
1318 Perl_ck_rvconst, /* rv2av */
1319 Perl_ck_null, /* aelemfast */
1320 Perl_ck_null, /* aelem */
1321 Perl_ck_null, /* aslice */
1322 Perl_ck_each, /* aeach */
1323 Perl_ck_each, /* akeys */
1324 Perl_ck_each, /* avalues */
1325 Perl_ck_each, /* each */
1326 Perl_ck_each, /* values */
1327 Perl_ck_each, /* keys */
1328 Perl_ck_delete, /* delete */
1329 Perl_ck_exists, /* exists */
1330 Perl_ck_rvconst, /* rv2hv */
1331 Perl_ck_null, /* helem */
1332 Perl_ck_null, /* hslice */
1333 Perl_ck_fun, /* boolkeys */
1334 Perl_ck_unpack, /* unpack */
1335 Perl_ck_fun, /* pack */
1336 Perl_ck_split, /* split */
1337 Perl_ck_join, /* join */
1338 Perl_ck_null, /* list */
1339 Perl_ck_null, /* lslice */
1340 Perl_ck_fun, /* anonlist */
1341 Perl_ck_fun, /* anonhash */
cba5a3b0
DG
1342 Perl_ck_push, /* splice */
1343 Perl_ck_push, /* push */
ef69c8fc
BM
1344 Perl_ck_shift, /* pop */
1345 Perl_ck_shift, /* shift */
cba5a3b0 1346 Perl_ck_push, /* unshift */
ef69c8fc
BM
1347 Perl_ck_sort, /* sort */
1348 Perl_ck_fun, /* reverse */
1349 Perl_ck_grep, /* grepstart */
1350 Perl_ck_null, /* grepwhile */
1351 Perl_ck_grep, /* mapstart */
1352 Perl_ck_null, /* mapwhile */
1353 Perl_ck_null, /* range */
1354 Perl_ck_null, /* flip */
1355 Perl_ck_null, /* flop */
1356 Perl_ck_null, /* and */
1357 Perl_ck_null, /* or */
1358 Perl_ck_null, /* xor */
1359 Perl_ck_null, /* dor */
1360 Perl_ck_null, /* cond_expr */
1361 Perl_ck_null, /* andassign */
1362 Perl_ck_null, /* orassign */
1363 Perl_ck_null, /* dorassign */
1364 Perl_ck_method, /* method */
1365 Perl_ck_subr, /* entersub */
1366 Perl_ck_null, /* leavesub */
1367 Perl_ck_null, /* leavesublv */
1368 Perl_ck_fun, /* caller */
1369 Perl_ck_fun, /* warn */
1370 Perl_ck_die, /* die */
1371 Perl_ck_fun, /* reset */
1372 Perl_ck_null, /* lineseq */
1373 Perl_ck_null, /* nextstate */
1374 Perl_ck_null, /* dbstate */
1375 Perl_ck_null, /* unstack */
1376 Perl_ck_null, /* enter */
1377 Perl_ck_null, /* leave */
1378 Perl_ck_null, /* scope */
1379 Perl_ck_null, /* enteriter */
1380 Perl_ck_null, /* iter */
1381 Perl_ck_null, /* enterloop */
1382 Perl_ck_null, /* leaveloop */
1383 Perl_ck_return, /* return */
1384 Perl_ck_null, /* last */
1385 Perl_ck_null, /* next */
1386 Perl_ck_null, /* redo */
1387 Perl_ck_null, /* dump */
1388 Perl_ck_null, /* goto */
1389 Perl_ck_exit, /* exit */
1390 Perl_ck_null, /* method_named */
1391 Perl_ck_null, /* entergiven */
1392 Perl_ck_null, /* leavegiven */
1393 Perl_ck_null, /* enterwhen */
1394 Perl_ck_null, /* leavewhen */
1395 Perl_ck_null, /* break */
1396 Perl_ck_null, /* continue */
1397 Perl_ck_open, /* open */
1398 Perl_ck_fun, /* close */
1399 Perl_ck_fun, /* pipe_op */
1400 Perl_ck_fun, /* fileno */
1401 Perl_ck_fun, /* umask */
1402 Perl_ck_fun, /* binmode */
1403 Perl_ck_fun, /* tie */
1404 Perl_ck_fun, /* untie */
1405 Perl_ck_fun, /* tied */
1406 Perl_ck_fun, /* dbmopen */
1407 Perl_ck_fun, /* dbmclose */
1408 Perl_ck_select, /* sselect */
1409 Perl_ck_select, /* select */
1410 Perl_ck_eof, /* getc */
1411 Perl_ck_fun, /* read */
1412 Perl_ck_fun, /* enterwrite */
1413 Perl_ck_null, /* leavewrite */
1414 Perl_ck_listiob, /* prtf */
1415 Perl_ck_listiob, /* print */
1416 Perl_ck_listiob, /* say */
1417 Perl_ck_fun, /* sysopen */
1418 Perl_ck_fun, /* sysseek */
1419 Perl_ck_fun, /* sysread */
1420 Perl_ck_fun, /* syswrite */
1421 Perl_ck_eof, /* eof */
1422 Perl_ck_fun, /* tell */
1423 Perl_ck_fun, /* seek */
1424 Perl_ck_trunc, /* truncate */
1425 Perl_ck_fun, /* fcntl */
1426 Perl_ck_fun, /* ioctl */
1427 Perl_ck_fun, /* flock */
1428 Perl_ck_fun, /* send */
1429 Perl_ck_fun, /* recv */
1430 Perl_ck_fun, /* socket */
1431 Perl_ck_fun, /* sockpair */
1432 Perl_ck_fun, /* bind */
1433 Perl_ck_fun, /* connect */
1434 Perl_ck_fun, /* listen */
1435 Perl_ck_fun, /* accept */
1436 Perl_ck_fun, /* shutdown */
1437 Perl_ck_fun, /* gsockopt */
1438 Perl_ck_fun, /* ssockopt */
1439 Perl_ck_fun, /* getsockname */
1440 Perl_ck_fun, /* getpeername */
1441 Perl_ck_ftst, /* lstat */
1442 Perl_ck_ftst, /* stat */
1443 Perl_ck_ftst, /* ftrread */
1444 Perl_ck_ftst, /* ftrwrite */
1445 Perl_ck_ftst, /* ftrexec */
1446 Perl_ck_ftst, /* fteread */
1447 Perl_ck_ftst, /* ftewrite */
1448 Perl_ck_ftst, /* fteexec */
1449 Perl_ck_ftst, /* ftis */
1450 Perl_ck_ftst, /* ftsize */
1451 Perl_ck_ftst, /* ftmtime */
1452 Perl_ck_ftst, /* ftatime */
1453 Perl_ck_ftst, /* ftctime */
1454 Perl_ck_ftst, /* ftrowned */
1455 Perl_ck_ftst, /* fteowned */
1456 Perl_ck_ftst, /* ftzero */
1457 Perl_ck_ftst, /* ftsock */
1458 Perl_ck_ftst, /* ftchr */
1459 Perl_ck_ftst, /* ftblk */
1460 Perl_ck_ftst, /* ftfile */
1461 Perl_ck_ftst, /* ftdir */
1462 Perl_ck_ftst, /* ftpipe */
1463 Perl_ck_ftst, /* ftsuid */
1464 Perl_ck_ftst, /* ftsgid */
1465 Perl_ck_ftst, /* ftsvtx */
1466 Perl_ck_ftst, /* ftlink */
1467 Perl_ck_ftst, /* fttty */
1468 Perl_ck_ftst, /* fttext */
1469 Perl_ck_ftst, /* ftbinary */
1470 Perl_ck_chdir, /* chdir */
1471 Perl_ck_fun, /* chown */
1472 Perl_ck_fun, /* chroot */
1473 Perl_ck_fun, /* unlink */
1474 Perl_ck_fun, /* chmod */
1475 Perl_ck_fun, /* utime */
1476 Perl_ck_fun, /* rename */
1477 Perl_ck_fun, /* link */
1478 Perl_ck_fun, /* symlink */
1479 Perl_ck_fun, /* readlink */
1480 Perl_ck_fun, /* mkdir */
1481 Perl_ck_fun, /* rmdir */
1482 Perl_ck_fun, /* open_dir */
1483 Perl_ck_fun, /* readdir */
1484 Perl_ck_fun, /* telldir */
1485 Perl_ck_fun, /* seekdir */
1486 Perl_ck_fun, /* rewinddir */
1487 Perl_ck_fun, /* closedir */
1488 Perl_ck_null, /* fork */
1489 Perl_ck_null, /* wait */
1490 Perl_ck_fun, /* waitpid */
1491 Perl_ck_exec, /* system */
1492 Perl_ck_exec, /* exec */
1493 Perl_ck_fun, /* kill */
1494 Perl_ck_null, /* getppid */
1495 Perl_ck_fun, /* getpgrp */
1496 Perl_ck_fun, /* setpgrp */
1497 Perl_ck_fun, /* getpriority */
1498 Perl_ck_fun, /* setpriority */
1499 Perl_ck_null, /* time */
1500 Perl_ck_null, /* tms */
1501 Perl_ck_fun, /* localtime */
1502 Perl_ck_fun, /* gmtime */
1503 Perl_ck_fun, /* alarm */
1504 Perl_ck_fun, /* sleep */
1505 Perl_ck_fun, /* shmget */
1506 Perl_ck_fun, /* shmctl */
1507 Perl_ck_fun, /* shmread */
1508 Perl_ck_fun, /* shmwrite */
1509 Perl_ck_fun, /* msgget */
1510 Perl_ck_fun, /* msgctl */
1511 Perl_ck_fun, /* msgsnd */
1512 Perl_ck_fun, /* msgrcv */
1513 Perl_ck_fun, /* semop */
1514 Perl_ck_fun, /* semget */
1515 Perl_ck_fun, /* semctl */
1516 Perl_ck_require, /* require */
1517 Perl_ck_fun, /* dofile */
1518 Perl_ck_svconst, /* hintseval */
1519 Perl_ck_eval, /* entereval */
1520 Perl_ck_null, /* leaveeval */
1521 Perl_ck_eval, /* entertry */
1522 Perl_ck_null, /* leavetry */
1523 Perl_ck_fun, /* ghbyname */
1524 Perl_ck_fun, /* ghbyaddr */
1525 Perl_ck_null, /* ghostent */
1526 Perl_ck_fun, /* gnbyname */
1527 Perl_ck_fun, /* gnbyaddr */
1528 Perl_ck_null, /* gnetent */
1529 Perl_ck_fun, /* gpbyname */
1530 Perl_ck_fun, /* gpbynumber */
1531 Perl_ck_null, /* gprotoent */
1532 Perl_ck_fun, /* gsbyname */
1533 Perl_ck_fun, /* gsbyport */
1534 Perl_ck_null, /* gservent */
1535 Perl_ck_fun, /* shostent */
1536 Perl_ck_fun, /* snetent */
1537 Perl_ck_fun, /* sprotoent */
1538 Perl_ck_fun, /* sservent */
1539 Perl_ck_null, /* ehostent */
1540 Perl_ck_null, /* enetent */
1541 Perl_ck_null, /* eprotoent */
1542 Perl_ck_null, /* eservent */
1543 Perl_ck_fun, /* gpwnam */
1544 Perl_ck_fun, /* gpwuid */
1545 Perl_ck_null, /* gpwent */
1546 Perl_ck_null, /* spwent */
1547 Perl_ck_null, /* epwent */
1548 Perl_ck_fun, /* ggrnam */
1549 Perl_ck_fun, /* ggrgid */
1550 Perl_ck_null, /* ggrent */
1551 Perl_ck_null, /* sgrent */
1552 Perl_ck_null, /* egrent */
1553 Perl_ck_null, /* getlogin */
1554 Perl_ck_fun, /* syscall */
1555 Perl_ck_rfun, /* lock */
1556 Perl_ck_null, /* once */
1557 Perl_ck_null, /* custom */
cba5a3b0
DG
1558 Perl_ck_each, /* reach */
1559 Perl_ck_each, /* rkeys */
1560 Perl_ck_each, /* rvalues */
6342d5c5 1561 Perl_ck_match, /* transr */
27da23d5 1562}
79072805 1563#endif
97aff369 1564#ifdef PERL_CHECK_INITED
27da23d5 1565;
97aff369 1566#endif /* #ifdef PERL_CHECK_INITED */
27da23d5
JH
1567
1568#ifndef PERL_GLOBAL_STRUCT_INIT
79072805
LW
1569
1570#ifndef DOINIT
1ccb7c8d 1571EXTCONST U32 PL_opargs[];
79072805 1572#else
1ccb7c8d 1573EXTCONST U32 PL_opargs[] = {
79072805 1574 0x00000000, /* null */
93a17b20 1575 0x00000000, /* stub */
903fd87c 1576 0x00001b04, /* scalar */
79072805 1577 0x00000004, /* pushmark */
903fd87c
NC
1578 0x00000004, /* wantarray */
1579 0x00000604, /* const */
1580 0x00000644, /* gvsv */
1581 0x00000644, /* gv */
1582 0x00011240, /* gelem */
748a9306
LW
1583 0x00000044, /* padsv */
1584 0x00000040, /* padav */
1585 0x00000040, /* padhv */
1586 0x00000040, /* padany */
903fd87c
NC
1587 0x00000540, /* pushre */
1588 0x00000144, /* rv2gv */
1589 0x00000144, /* rv2sv */
1590 0x00000104, /* av2arylen */
1591 0x00000140, /* rv2cv */
1592 0x00000600, /* anoncode */
1593 0x00001b04, /* prototype */
1594 0x00002101, /* refgen */
1595 0x00001106, /* srefgen */
1596 0x00009b8c, /* ref */
1597 0x00091404, /* bless */
1598 0x00009b88, /* backtick */
1599 0x00009408, /* glob */
1600 0x0000eb08, /* readline */
1601 0x00000608, /* rcatline */
1602 0x00001104, /* regcmaybe */
1603 0x00001104, /* regcreset */
1604 0x00001304, /* regcomp */
1605 0x00000540, /* match */
1606 0x00000504, /* qr */
1607 0x00001544, /* subst */
1608 0x00000344, /* substcont */
1609 0x00001804, /* trans */
79072805 1610 0x00000004, /* sassign */
903fd87c
NC
1611 0x00022208, /* aassign */
1612 0x00002b0d, /* chop */
1613 0x00009b8c, /* schop */
1614 0x00002b1d, /* chomp */
1615 0x00009b9c, /* schomp */
1616 0x00009b84, /* defined */
1617 0x00009b04, /* undef */
1618 0x00009b84, /* study */
1619 0x00009b8c, /* pos */
1620 0x00001164, /* preinc */
1621 0x00001144, /* i_preinc */
1622 0x00001164, /* predec */
1623 0x00001144, /* i_predec */
1624 0x0000116c, /* postinc */
1625 0x0000115c, /* i_postinc */
1626 0x0000116c, /* postdec */
1627 0x0000115c, /* i_postdec */
1628 0x0001121e, /* pow */
1629 0x0001123e, /* multiply */
1630 0x0001121e, /* i_multiply */
1631 0x0001123e, /* divide */
1632 0x0001121e, /* i_divide */
1633 0x0001123e, /* modulo */
1634 0x0001121e, /* i_modulo */
1635 0x00012209, /* repeat */
1636 0x0001123e, /* add */
1637 0x0001121e, /* i_add */
1638 0x0001123e, /* subtract */
1639 0x0001121e, /* i_subtract */
1640 0x0001121e, /* concat */
1641 0x0000141e, /* stringify */
1642 0x0001121e, /* left_shift */
1643 0x0001121e, /* right_shift */
1644 0x00011226, /* lt */
1645 0x00011206, /* i_lt */
1646 0x00011226, /* gt */
1647 0x00011206, /* i_gt */
1648 0x00011226, /* le */
1649 0x00011206, /* i_le */
1650 0x00011226, /* ge */
1651 0x00011206, /* i_ge */
1652 0x00011226, /* eq */
1653 0x00011206, /* i_eq */
1654 0x00011226, /* ne */
1655 0x00011206, /* i_ne */
1656 0x0001122e, /* ncmp */
1657 0x0001120e, /* i_ncmp */
1658 0x00011206, /* slt */
1659 0x00011206, /* sgt */
1660 0x00011206, /* sle */
1661 0x00011206, /* sge */
1662 0x00011206, /* seq */
1663 0x00011206, /* sne */
1664 0x0001120e, /* scmp */
1665 0x0001120e, /* bit_and */
1666 0x0001120e, /* bit_xor */
1667 0x0001120e, /* bit_or */
1668 0x0000112e, /* negate */
1669 0x0000111e, /* i_negate */
1670 0x00001106, /* not */
1671 0x0000110e, /* complement */
1672 0x00000204, /* smartmatch */
1673 0x0001141e, /* atan2 */
1674 0x00009b9e, /* sin */
1675 0x00009b9e, /* cos */
1676 0x00009b1c, /* rand */
1677 0x00009b1c, /* srand */
1678 0x00009b9e, /* exp */
1679 0x00009b9e, /* log */
1680 0x00009b9e, /* sqrt */
1681 0x00009b9e, /* int */
1682 0x00009b9e, /* hex */
1683 0x00009b9e, /* oct */
1684 0x00009b9e, /* abs */
1685 0x00009b9e, /* length */
1686 0x0991140c, /* substr */
1687 0x0011140c, /* vec */
1688 0x0091141c, /* index */
1689 0x0091141c, /* rindex */
1690 0x0002140f, /* sprintf */
1691 0x00021405, /* formline */
1692 0x00009b9e, /* ord */
1693 0x00009b9e, /* chr */
1694 0x0001141e, /* crypt */
1695 0x00009b8e, /* ucfirst */
1696 0x00009b8e, /* lcfirst */
1697 0x00009b8e, /* uc */
1698 0x00009b8e, /* lc */
1699 0x00009b8e, /* quotemeta */
1700 0x00000148, /* rv2av */
1701 0x00013604, /* aelemfast */
1702 0x00013204, /* aelem */
1703 0x00023401, /* aslice */
1704 0x00003b00, /* aeach */
1705 0x00003b08, /* akeys */
1706 0x00003b08, /* avalues */
1707 0x00004b00, /* each */
1708 0x00004b08, /* values */
1709 0x00004b08, /* keys */
1710 0x00001b00, /* delete */
1711 0x00001b04, /* exists */
1712 0x00000148, /* rv2hv */
1713 0x00014204, /* helem */
1714 0x00024401, /* hslice */
1715 0x00004b00, /* boolkeys */
1716 0x00091400, /* unpack */
1717 0x0002140d, /* pack */
1718 0x00111408, /* split */
1719 0x0002140d, /* join */
1720 0x00002401, /* list */
1721 0x00224200, /* lslice */
1722 0x00002405, /* anonlist */
1723 0x00002405, /* anonhash */
1724 0x02993401, /* splice */
1725 0x0002341d, /* push */
1726 0x0000bb04, /* pop */
1727 0x0000bb04, /* shift */
1728 0x0002341d, /* unshift */
1729 0x0002d441, /* sort */
1730 0x00002409, /* reverse */
1731 0x00025441, /* grepstart */
1732 0x00000348, /* grepwhile */
1733 0x00025441, /* mapstart */
1734 0x00000348, /* mapwhile */
1735 0x00011300, /* range */
1736 0x00011100, /* flip */
1737 0x00000100, /* flop */
1738 0x00000300, /* and */
1739 0x00000300, /* or */
1740 0x00011206, /* xor */
1741 0x00000300, /* dor */
1742 0x00000340, /* cond_expr */
1743 0x00000304, /* andassign */
1744 0x00000304, /* orassign */
1745 0x00000304, /* dorassign */
1746 0x00000140, /* method */
1747 0x00002149, /* entersub */
1748 0x00000100, /* leavesub */
1749 0x00000100, /* leavesublv */
1750 0x00009b08, /* caller */
1751 0x0000240d, /* warn */
1752 0x0000244d, /* die */
1753 0x00009b04, /* reset */
1754 0x00000400, /* lineseq */
1755 0x00000a04, /* nextstate */
1756 0x00000a04, /* dbstate */
79072805
LW
1757 0x00000004, /* unstack */
1758 0x00000000, /* enter */
903fd87c
NC
1759 0x00000400, /* leave */
1760 0x00000400, /* scope */
1761 0x00000940, /* enteriter */
79072805 1762 0x00000000, /* iter */
903fd87c
NC
1763 0x00000940, /* enterloop */
1764 0x00000200, /* leaveloop */
1765 0x00002441, /* return */
1766 0x00000d44, /* last */
1767 0x00000d44, /* next */
1768 0x00000d44, /* redo */
1769 0x00000d44, /* dump */
1770 0x00000d44, /* goto */
1771 0x00009b44, /* exit */
1772 0x00000640, /* method_named */
1773 0x00000340, /* entergiven */
1774 0x00000100, /* leavegiven */
1775 0x00000340, /* enterwhen */
1776 0x00000100, /* leavewhen */
fdecdb95
NC
1777 0x00000000, /* break */
1778 0x00000000, /* continue */
903fd87c
NC
1779 0x0029640d, /* open */
1780 0x0000eb04, /* close */
1781 0x00066404, /* pipe_op */
1782 0x00006b0c, /* fileno */
1783 0x00009b0c, /* umask */
1784 0x00096404, /* binmode */
1785 0x00217445, /* tie */
1786 0x00007b04, /* untie */
1787 0x00007b04, /* tied */
1788 0x00114404, /* dbmopen */
1789 0x00004b04, /* dbmclose */
1790 0x01111408, /* sselect */
1791 0x0000e40c, /* select */
1792 0x0000eb0c, /* getc */
1793 0x0917640d, /* read */
1794 0x0000eb44, /* enterwrite */
1795 0x00000100, /* leavewrite */
1796 0x0002e405, /* prtf */
1797 0x0002e405, /* print */
1798 0x0002e405, /* say */
1799 0x09116404, /* sysopen */
1800 0x00116404, /* sysseek */
1801 0x0917640d, /* sysread */
1802 0x0991640d, /* syswrite */
1803 0x0000eb04, /* eof */
1804 0x0000eb0c, /* tell */
1805 0x00116404, /* seek */
1806 0x00011404, /* truncate */
1807 0x0011640c, /* fcntl */
1808 0x0011640c, /* ioctl */
1809 0x0001641c, /* flock */
1810 0x0911640d, /* send */
1811 0x0117640d, /* recv */
1812 0x01116404, /* socket */
1813 0x11166404, /* sockpair */
1814 0x00016404, /* bind */
1815 0x00016404, /* connect */
1816 0x00016404, /* listen */
1817 0x0006640c, /* accept */
1818 0x0001640c, /* shutdown */
1819 0x00116404, /* gsockopt */
1820 0x01116404, /* ssockopt */
1821 0x00006b04, /* getsockname */
1822 0x00006b04, /* getpeername */
1823 0x00006c80, /* lstat */
1824 0x00006c80, /* stat */
1825 0x00006c84, /* ftrread */
1826 0x00006c84, /* ftrwrite */
1827 0x00006c84, /* ftrexec */
1828 0x00006c84, /* fteread */
1829 0x00006c84, /* ftewrite */
1830 0x00006c84, /* fteexec */
1831 0x00006c84, /* ftis */
1832 0x00006c8c, /* ftsize */
1833 0x00006c8c, /* ftmtime */
1834 0x00006c8c, /* ftatime */
1835 0x00006c8c, /* ftctime */
1836 0x00006c84, /* ftrowned */
1837 0x00006c84, /* fteowned */
1838 0x00006c84, /* ftzero */
1839 0x00006c84, /* ftsock */
1840 0x00006c84, /* ftchr */
1841 0x00006c84, /* ftblk */
1842 0x00006c84, /* ftfile */
1843 0x00006c84, /* ftdir */
1844 0x00006c84, /* ftpipe */
1845 0x00006c84, /* ftsuid */
1846 0x00006c84, /* ftsgid */
1847 0x00006c84, /* ftsvtx */
1848 0x00006c84, /* ftlink */
1849 0x00006c04, /* fttty */
1850 0x00006c84, /* fttext */
1851 0x00006c84, /* ftbinary */
1852 0x00009b1c, /* chdir */
1853 0x0000241d, /* chown */
1854 0x00009b9c, /* chroot */
1855 0x0000249d, /* unlink */
1856 0x0000241d, /* chmod */
1857 0x0000241d, /* utime */
1858 0x0001141c, /* rename */
1859 0x0001141c, /* link */
1860 0x0001141c, /* symlink */
1861 0x00009b8c, /* readlink */
1862 0x0009949c, /* mkdir */
1863 0x00009b9c, /* rmdir */
1864 0x00016404, /* open_dir */
1865 0x00006b00, /* readdir */
1866 0x00006b0c, /* telldir */
1867 0x00016404, /* seekdir */
1868 0x00006b04, /* rewinddir */
1869 0x00006b04, /* closedir */
1870 0x0000000c, /* fork */
1871 0x0000001c, /* wait */
1872 0x0001141c, /* waitpid */
1873 0x0002941d, /* system */
1874 0x0002945d, /* exec */
1875 0x0000245d, /* kill */
1876 0x0000001c, /* getppid */
1877 0x00009b1c, /* getpgrp */
1878 0x0009941c, /* setpgrp */
1879 0x0001141c, /* getpriority */
1880 0x0011141c, /* setpriority */
1881 0x0000001c, /* time */
79072805 1882 0x00000000, /* tms */
903fd87c
NC
1883 0x00009b08, /* localtime */
1884 0x00009b08, /* gmtime */
1885 0x00009b8c, /* alarm */
1886 0x00009b1c, /* sleep */
1887 0x0011140d, /* shmget */
1888 0x0011140d, /* shmctl */
1889 0x0111140d, /* shmread */
1890 0x0111140d, /* shmwrite */
1891 0x0001140d, /* msgget */
1892 0x0011140d, /* msgctl */
1893 0x0011140d, /* msgsnd */
1894 0x1111140d, /* msgrcv */
1895 0x0001140d, /* semop */
1896 0x0011140d, /* semget */
1897 0x0111140d, /* semctl */
1898 0x00009bc0, /* require */
1899 0x00001140, /* dofile */
1900 0x00000604, /* hintseval */
1901 0x00001b40, /* entereval */
1902 0x00001100, /* leaveeval */
1903 0x00000b40, /* entertry */
1904 0x00000400, /* leavetry */
1905 0x00001b00, /* ghbyname */
1906 0x00011400, /* ghbyaddr */
79072805 1907 0x00000000, /* ghostent */
903fd87c
NC
1908 0x00001b00, /* gnbyname */
1909 0x00011400, /* gnbyaddr */
79072805 1910 0x00000000, /* gnetent */
903fd87c
NC
1911 0x00001b00, /* gpbyname */
1912 0x00001400, /* gpbynumber */
79072805 1913 0x00000000, /* gprotoent */
903fd87c
NC
1914 0x00011400, /* gsbyname */
1915 0x00011400, /* gsbyport */
79072805 1916 0x00000000, /* gservent */
903fd87c
NC
1917 0x00001b04, /* shostent */
1918 0x00001b04, /* snetent */
1919 0x00001b04, /* sprotoent */
1920 0x00001b04, /* sservent */
1921 0x00000004, /* ehostent */
1922 0x00000004, /* enetent */
1923 0x00000004, /* eprotoent */
1924 0x00000004, /* eservent */
1925 0x00001b00, /* gpwnam */
1926 0x00001b00, /* gpwuid */
79072805 1927 0x00000000, /* gpwent */
903fd87c
NC
1928 0x00000004, /* spwent */
1929 0x00000004, /* epwent */
1930 0x00001b00, /* ggrnam */
1931 0x00001b00, /* ggrgid */
79072805 1932 0x00000000, /* ggrent */
903fd87c
NC
1933 0x00000004, /* sgrent */
1934 0x00000004, /* egrent */
79072805 1935 0x0000000c, /* getlogin */
903fd87c
NC
1936 0x0002140d, /* syscall */
1937 0x00007b04, /* lock */
1938 0x00000300, /* once */
438c221d 1939 0x00000000, /* custom */
cba5a3b0
DG
1940 0x00001b00, /* reach */
1941 0x00001b08, /* rkeys */
1942 0x00001b08, /* rvalues */
6342d5c5 1943 0x00001804, /* transr */
79072805
LW
1944};
1945#endif
73c4f7a1 1946
bae1192d
JH
1947#endif /* !PERL_GLOBAL_STRUCT_INIT */
1948
73c4f7a1 1949END_EXTERN_C
27da23d5 1950
37442d52 1951/* ex: set ro: */