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