This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Remove some rendundant SvOOK_on tests
[perl5.git] / opcode.h
CommitLineData
748a9306
LW
1#define pp_i_preinc pp_preinc
2#define pp_i_predec pp_predec
3#define pp_i_postinc pp_postinc
4#define pp_i_postdec pp_postdec
5
79072805
LW
6typedef enum {
7 OP_NULL, /* 0 */
93a17b20
LW
8 OP_STUB, /* 1 */
9 OP_SCALAR, /* 2 */
10 OP_PUSHMARK, /* 3 */
11 OP_WANTARRAY, /* 4 */
79072805 12 OP_CONST, /* 5 */
a0d0e21e
LW
13 OP_GVSV, /* 6 */
14 OP_GV, /* 7 */
c07a80fd 15 OP_GELEM, /* 8 */
16 OP_PADSV, /* 9 */
17 OP_PADAV, /* 10 */
18 OP_PADHV, /* 11 */
19 OP_PADANY, /* 12 */
20 OP_PUSHRE, /* 13 */
21 OP_RV2GV, /* 14 */
a0d0e21e
LW
22 OP_RV2SV, /* 15 */
23 OP_AV2ARYLEN, /* 16 */
24 OP_RV2CV, /* 17 */
25 OP_ANONCODE, /* 18 */
c07a80fd 26 OP_PROTOTYPE, /* 19 */
27 OP_REFGEN, /* 20 */
28 OP_SREFGEN, /* 21 */
29 OP_REF, /* 22 */
30 OP_BLESS, /* 23 */
31 OP_BACKTICK, /* 24 */
32 OP_GLOB, /* 25 */
33 OP_READLINE, /* 26 */
34 OP_RCATLINE, /* 27 */
35 OP_REGCMAYBE, /* 28 */
36 OP_REGCOMP, /* 29 */
37 OP_MATCH, /* 30 */
38 OP_SUBST, /* 31 */
39 OP_SUBSTCONT, /* 32 */
40 OP_TRANS, /* 33 */
41 OP_SASSIGN, /* 34 */
42 OP_AASSIGN, /* 35 */
43 OP_CHOP, /* 36 */
44 OP_SCHOP, /* 37 */
45 OP_CHOMP, /* 38 */
46 OP_SCHOMP, /* 39 */
47 OP_DEFINED, /* 40 */
48 OP_UNDEF, /* 41 */
49 OP_STUDY, /* 42 */
50 OP_POS, /* 43 */
51 OP_PREINC, /* 44 */
52 OP_I_PREINC, /* 45 */
53 OP_PREDEC, /* 46 */
54 OP_I_PREDEC, /* 47 */
55 OP_POSTINC, /* 48 */
56 OP_I_POSTINC, /* 49 */
57 OP_POSTDEC, /* 50 */
58 OP_I_POSTDEC, /* 51 */
59 OP_POW, /* 52 */
60 OP_MULTIPLY, /* 53 */
61 OP_I_MULTIPLY, /* 54 */
62 OP_DIVIDE, /* 55 */
63 OP_I_DIVIDE, /* 56 */
64 OP_MODULO, /* 57 */
65 OP_I_MODULO, /* 58 */
66 OP_REPEAT, /* 59 */
67 OP_ADD, /* 60 */
68 OP_I_ADD, /* 61 */
69 OP_SUBTRACT, /* 62 */
70 OP_I_SUBTRACT, /* 63 */
71 OP_CONCAT, /* 64 */
72 OP_STRINGIFY, /* 65 */
73 OP_LEFT_SHIFT, /* 66 */
74 OP_RIGHT_SHIFT, /* 67 */
75 OP_LT, /* 68 */
76 OP_I_LT, /* 69 */
77 OP_GT, /* 70 */
78 OP_I_GT, /* 71 */
79 OP_LE, /* 72 */
80 OP_I_LE, /* 73 */
81 OP_GE, /* 74 */
82 OP_I_GE, /* 75 */
83 OP_EQ, /* 76 */
84 OP_I_EQ, /* 77 */
85 OP_NE, /* 78 */
86 OP_I_NE, /* 79 */
87 OP_NCMP, /* 80 */
88 OP_I_NCMP, /* 81 */
89 OP_SLT, /* 82 */
90 OP_SGT, /* 83 */
91 OP_SLE, /* 84 */
92 OP_SGE, /* 85 */
93 OP_SEQ, /* 86 */
94 OP_SNE, /* 87 */
95 OP_SCMP, /* 88 */
96 OP_BIT_AND, /* 89 */
97 OP_BIT_XOR, /* 90 */
98 OP_BIT_OR, /* 91 */
99 OP_NEGATE, /* 92 */
100 OP_I_NEGATE, /* 93 */
101 OP_NOT, /* 94 */
102 OP_COMPLEMENT, /* 95 */
103 OP_ATAN2, /* 96 */
104 OP_SIN, /* 97 */
105 OP_COS, /* 98 */
106 OP_RAND, /* 99 */
107 OP_SRAND, /* 100 */
108 OP_EXP, /* 101 */
109 OP_LOG, /* 102 */
110 OP_SQRT, /* 103 */
111 OP_INT, /* 104 */
112 OP_HEX, /* 105 */
113 OP_OCT, /* 106 */
114 OP_ABS, /* 107 */
115 OP_LENGTH, /* 108 */
116 OP_SUBSTR, /* 109 */
117 OP_VEC, /* 110 */
118 OP_INDEX, /* 111 */
119 OP_RINDEX, /* 112 */
120 OP_SPRINTF, /* 113 */
121 OP_FORMLINE, /* 114 */
122 OP_ORD, /* 115 */
123 OP_CHR, /* 116 */
124 OP_CRYPT, /* 117 */
125 OP_UCFIRST, /* 118 */
126 OP_LCFIRST, /* 119 */
127 OP_UC, /* 120 */
128 OP_LC, /* 121 */
129 OP_QUOTEMETA, /* 122 */
130 OP_RV2AV, /* 123 */
131 OP_AELEMFAST, /* 124 */
132 OP_AELEM, /* 125 */
133 OP_ASLICE, /* 126 */
134 OP_EACH, /* 127 */
135 OP_VALUES, /* 128 */
136 OP_KEYS, /* 129 */
137 OP_DELETE, /* 130 */
138 OP_EXISTS, /* 131 */
139 OP_RV2HV, /* 132 */
140 OP_HELEM, /* 133 */
141 OP_HSLICE, /* 134 */
142 OP_UNPACK, /* 135 */
143 OP_PACK, /* 136 */
144 OP_SPLIT, /* 137 */
145 OP_JOIN, /* 138 */
146 OP_LIST, /* 139 */
147 OP_LSLICE, /* 140 */
148 OP_ANONLIST, /* 141 */
149 OP_ANONHASH, /* 142 */
150 OP_SPLICE, /* 143 */
151 OP_PUSH, /* 144 */
152 OP_POP, /* 145 */
153 OP_SHIFT, /* 146 */
154 OP_UNSHIFT, /* 147 */
155 OP_SORT, /* 148 */
156 OP_REVERSE, /* 149 */
157 OP_GREPSTART, /* 150 */
158 OP_GREPWHILE, /* 151 */
159 OP_MAPSTART, /* 152 */
160 OP_MAPWHILE, /* 153 */
161 OP_RANGE, /* 154 */
162 OP_FLIP, /* 155 */
163 OP_FLOP, /* 156 */
164 OP_AND, /* 157 */
165 OP_OR, /* 158 */
166 OP_XOR, /* 159 */
167 OP_COND_EXPR, /* 160 */
168 OP_ANDASSIGN, /* 161 */
169 OP_ORASSIGN, /* 162 */
170 OP_METHOD, /* 163 */
171 OP_ENTERSUB, /* 164 */
172 OP_LEAVESUB, /* 165 */
173 OP_CALLER, /* 166 */
174 OP_WARN, /* 167 */
175 OP_DIE, /* 168 */
176 OP_RESET, /* 169 */
177 OP_LINESEQ, /* 170 */
178 OP_NEXTSTATE, /* 171 */
179 OP_DBSTATE, /* 172 */
180 OP_UNSTACK, /* 173 */
181 OP_ENTER, /* 174 */
182 OP_LEAVE, /* 175 */
183 OP_SCOPE, /* 176 */
184 OP_ENTERITER, /* 177 */
185 OP_ITER, /* 178 */
186 OP_ENTERLOOP, /* 179 */
187 OP_LEAVELOOP, /* 180 */
188 OP_RETURN, /* 181 */
189 OP_LAST, /* 182 */
190 OP_NEXT, /* 183 */
191 OP_REDO, /* 184 */
192 OP_DUMP, /* 185 */
193 OP_GOTO, /* 186 */
194 OP_EXIT, /* 187 */
195 OP_OPEN, /* 188 */
196 OP_CLOSE, /* 189 */
197 OP_PIPE_OP, /* 190 */
198 OP_FILENO, /* 191 */
199 OP_UMASK, /* 192 */
200 OP_BINMODE, /* 193 */
201 OP_TIE, /* 194 */
202 OP_UNTIE, /* 195 */
203 OP_TIED, /* 196 */
204 OP_DBMOPEN, /* 197 */
205 OP_DBMCLOSE, /* 198 */
206 OP_SSELECT, /* 199 */
207 OP_SELECT, /* 200 */
208 OP_GETC, /* 201 */
209 OP_READ, /* 202 */
210 OP_ENTERWRITE, /* 203 */
211 OP_LEAVEWRITE, /* 204 */
212 OP_PRTF, /* 205 */
213 OP_PRINT, /* 206 */
214 OP_SYSOPEN, /* 207 */
8903cb82 215 OP_SYSSEEK, /* 208 */
216 OP_SYSREAD, /* 209 */
217 OP_SYSWRITE, /* 210 */
218 OP_SEND, /* 211 */
219 OP_RECV, /* 212 */
220 OP_EOF, /* 213 */
221 OP_TELL, /* 214 */
222 OP_SEEK, /* 215 */
223 OP_TRUNCATE, /* 216 */
224 OP_FCNTL, /* 217 */
225 OP_IOCTL, /* 218 */
226 OP_FLOCK, /* 219 */
227 OP_SOCKET, /* 220 */
228 OP_SOCKPAIR, /* 221 */
229 OP_BIND, /* 222 */
230 OP_CONNECT, /* 223 */
231 OP_LISTEN, /* 224 */
232 OP_ACCEPT, /* 225 */
233 OP_SHUTDOWN, /* 226 */
234 OP_GSOCKOPT, /* 227 */
235 OP_SSOCKOPT, /* 228 */
236 OP_GETSOCKNAME, /* 229 */
237 OP_GETPEERNAME, /* 230 */
238 OP_LSTAT, /* 231 */
239 OP_STAT, /* 232 */
240 OP_FTRREAD, /* 233 */
241 OP_FTRWRITE, /* 234 */
242 OP_FTREXEC, /* 235 */
243 OP_FTEREAD, /* 236 */
244 OP_FTEWRITE, /* 237 */
245 OP_FTEEXEC, /* 238 */
246 OP_FTIS, /* 239 */
247 OP_FTEOWNED, /* 240 */
248 OP_FTROWNED, /* 241 */
249 OP_FTZERO, /* 242 */
250 OP_FTSIZE, /* 243 */
251 OP_FTMTIME, /* 244 */
252 OP_FTATIME, /* 245 */
253 OP_FTCTIME, /* 246 */
254 OP_FTSOCK, /* 247 */
255 OP_FTCHR, /* 248 */
256 OP_FTBLK, /* 249 */
257 OP_FTFILE, /* 250 */
258 OP_FTDIR, /* 251 */
259 OP_FTPIPE, /* 252 */
260 OP_FTLINK, /* 253 */
261 OP_FTSUID, /* 254 */
262 OP_FTSGID, /* 255 */
263 OP_FTSVTX, /* 256 */
264 OP_FTTTY, /* 257 */
265 OP_FTTEXT, /* 258 */
266 OP_FTBINARY, /* 259 */
267 OP_CHDIR, /* 260 */
268 OP_CHOWN, /* 261 */
269 OP_CHROOT, /* 262 */
270 OP_UNLINK, /* 263 */
271 OP_CHMOD, /* 264 */
272 OP_UTIME, /* 265 */
273 OP_RENAME, /* 266 */
274 OP_LINK, /* 267 */
275 OP_SYMLINK, /* 268 */
276 OP_READLINK, /* 269 */
277 OP_MKDIR, /* 270 */
278 OP_RMDIR, /* 271 */
279 OP_OPEN_DIR, /* 272 */
280 OP_READDIR, /* 273 */
281 OP_TELLDIR, /* 274 */
282 OP_SEEKDIR, /* 275 */
283 OP_REWINDDIR, /* 276 */
284 OP_CLOSEDIR, /* 277 */
285 OP_FORK, /* 278 */
286 OP_WAIT, /* 279 */
287 OP_WAITPID, /* 280 */
288 OP_SYSTEM, /* 281 */
289 OP_EXEC, /* 282 */
290 OP_KILL, /* 283 */
291 OP_GETPPID, /* 284 */
292 OP_GETPGRP, /* 285 */
293 OP_SETPGRP, /* 286 */
294 OP_GETPRIORITY, /* 287 */
295 OP_SETPRIORITY, /* 288 */
296 OP_TIME, /* 289 */
297 OP_TMS, /* 290 */
298 OP_LOCALTIME, /* 291 */
299 OP_GMTIME, /* 292 */
300 OP_ALARM, /* 293 */
301 OP_SLEEP, /* 294 */
302 OP_SHMGET, /* 295 */
303 OP_SHMCTL, /* 296 */
304 OP_SHMREAD, /* 297 */
305 OP_SHMWRITE, /* 298 */
306 OP_MSGGET, /* 299 */
307 OP_MSGCTL, /* 300 */
308 OP_MSGSND, /* 301 */
309 OP_MSGRCV, /* 302 */
310 OP_SEMGET, /* 303 */
311 OP_SEMCTL, /* 304 */
312 OP_SEMOP, /* 305 */
313 OP_REQUIRE, /* 306 */
314 OP_DOFILE, /* 307 */
315 OP_ENTEREVAL, /* 308 */
316 OP_LEAVEEVAL, /* 309 */
317 OP_ENTERTRY, /* 310 */
318 OP_LEAVETRY, /* 311 */
319 OP_GHBYNAME, /* 312 */
320 OP_GHBYADDR, /* 313 */
321 OP_GHOSTENT, /* 314 */
322 OP_GNBYNAME, /* 315 */
323 OP_GNBYADDR, /* 316 */
324 OP_GNETENT, /* 317 */
325 OP_GPBYNAME, /* 318 */
326 OP_GPBYNUMBER, /* 319 */
327 OP_GPROTOENT, /* 320 */
328 OP_GSBYNAME, /* 321 */
329 OP_GSBYPORT, /* 322 */
330 OP_GSERVENT, /* 323 */
331 OP_SHOSTENT, /* 324 */
332 OP_SNETENT, /* 325 */
333 OP_SPROTOENT, /* 326 */
334 OP_SSERVENT, /* 327 */
335 OP_EHOSTENT, /* 328 */
336 OP_ENETENT, /* 329 */
337 OP_EPROTOENT, /* 330 */
338 OP_ESERVENT, /* 331 */
339 OP_GPWNAM, /* 332 */
340 OP_GPWUID, /* 333 */
341 OP_GPWENT, /* 334 */
342 OP_SPWENT, /* 335 */
343 OP_EPWENT, /* 336 */
344 OP_GGRNAM, /* 337 */
345 OP_GGRGID, /* 338 */
346 OP_GGRENT, /* 339 */
347 OP_SGRENT, /* 340 */
348 OP_EGRENT, /* 341 */
349 OP_GETLOGIN, /* 342 */
350 OP_SYSCALL, /* 343 */
c0329465 351 OP_LOCK, /* 344 */
2faa37cc 352 OP_THREADSV, /* 345 */
85e6fe83 353 OP_max
79072805
LW
354} opcode;
355
a863c7d1 356#define MAXO 346
79072805
LW
357
358#ifndef DOINIT
a0d0e21e 359EXT char *op_name[];
79072805 360#else
a0d0e21e 361EXT char *op_name[] = {
c07a80fd 362 "null",
363 "stub",
364 "scalar",
365 "pushmark",
366 "wantarray",
367 "const",
368 "gvsv",
369 "gv",
370 "gelem",
371 "padsv",
372 "padav",
373 "padhv",
374 "padany",
375 "pushre",
376 "rv2gv",
377 "rv2sv",
378 "av2arylen",
379 "rv2cv",
380 "anoncode",
381 "prototype",
382 "refgen",
383 "srefgen",
384 "ref",
385 "bless",
386 "backtick",
387 "glob",
388 "readline",
389 "rcatline",
390 "regcmaybe",
391 "regcomp",
392 "match",
393 "subst",
394 "substcont",
395 "trans",
396 "sassign",
397 "aassign",
398 "chop",
399 "schop",
400 "chomp",
401 "schomp",
402 "defined",
403 "undef",
404 "study",
405 "pos",
406 "preinc",
407 "i_preinc",
408 "predec",
409 "i_predec",
410 "postinc",
411 "i_postinc",
412 "postdec",
413 "i_postdec",
414 "pow",
415 "multiply",
416 "i_multiply",
417 "divide",
418 "i_divide",
419 "modulo",
420 "i_modulo",
421 "repeat",
422 "add",
423 "i_add",
424 "subtract",
425 "i_subtract",
426 "concat",
427 "stringify",
428 "left_shift",
429 "right_shift",
430 "lt",
431 "i_lt",
432 "gt",
433 "i_gt",
434 "le",
435 "i_le",
436 "ge",
437 "i_ge",
438 "eq",
439 "i_eq",
440 "ne",
441 "i_ne",
442 "ncmp",
443 "i_ncmp",
444 "slt",
445 "sgt",
446 "sle",
447 "sge",
448 "seq",
449 "sne",
450 "scmp",
451 "bit_and",
452 "bit_xor",
453 "bit_or",
454 "negate",
455 "i_negate",
456 "not",
457 "complement",
458 "atan2",
459 "sin",
460 "cos",
461 "rand",
462 "srand",
463 "exp",
464 "log",
465 "sqrt",
466 "int",
467 "hex",
468 "oct",
469 "abs",
470 "length",
471 "substr",
472 "vec",
473 "index",
474 "rindex",
475 "sprintf",
476 "formline",
477 "ord",
478 "chr",
479 "crypt",
480 "ucfirst",
481 "lcfirst",
482 "uc",
483 "lc",
484 "quotemeta",
485 "rv2av",
486 "aelemfast",
487 "aelem",
488 "aslice",
489 "each",
490 "values",
491 "keys",
492 "delete",
493 "exists",
494 "rv2hv",
495 "helem",
496 "hslice",
497 "unpack",
498 "pack",
499 "split",
500 "join",
501 "list",
502 "lslice",
503 "anonlist",
504 "anonhash",
505 "splice",
506 "push",
507 "pop",
508 "shift",
509 "unshift",
510 "sort",
511 "reverse",
512 "grepstart",
513 "grepwhile",
514 "mapstart",
515 "mapwhile",
516 "range",
517 "flip",
518 "flop",
519 "and",
520 "or",
521 "xor",
522 "cond_expr",
523 "andassign",
524 "orassign",
525 "method",
526 "entersub",
527 "leavesub",
528 "caller",
529 "warn",
530 "die",
531 "reset",
532 "lineseq",
533 "nextstate",
534 "dbstate",
535 "unstack",
536 "enter",
537 "leave",
538 "scope",
539 "enteriter",
540 "iter",
541 "enterloop",
542 "leaveloop",
543 "return",
544 "last",
545 "next",
546 "redo",
547 "dump",
548 "goto",
549 "exit",
550 "open",
551 "close",
552 "pipe_op",
553 "fileno",
554 "umask",
555 "binmode",
556 "tie",
557 "untie",
558 "tied",
559 "dbmopen",
560 "dbmclose",
561 "sselect",
562 "select",
563 "getc",
564 "read",
565 "enterwrite",
566 "leavewrite",
567 "prtf",
568 "print",
569 "sysopen",
137443ea 570 "sysseek",
c07a80fd 571 "sysread",
572 "syswrite",
573 "send",
574 "recv",
575 "eof",
576 "tell",
577 "seek",
578 "truncate",
579 "fcntl",
580 "ioctl",
581 "flock",
582 "socket",
583 "sockpair",
584 "bind",
585 "connect",
586 "listen",
587 "accept",
588 "shutdown",
589 "gsockopt",
590 "ssockopt",
591 "getsockname",
592 "getpeername",
593 "lstat",
594 "stat",
595 "ftrread",
596 "ftrwrite",
597 "ftrexec",
598 "fteread",
599 "ftewrite",
600 "fteexec",
601 "ftis",
602 "fteowned",
603 "ftrowned",
604 "ftzero",
605 "ftsize",
606 "ftmtime",
607 "ftatime",
608 "ftctime",
609 "ftsock",
610 "ftchr",
611 "ftblk",
612 "ftfile",
613 "ftdir",
614 "ftpipe",
615 "ftlink",
616 "ftsuid",
617 "ftsgid",
618 "ftsvtx",
619 "fttty",
620 "fttext",
621 "ftbinary",
622 "chdir",
623 "chown",
624 "chroot",
625 "unlink",
626 "chmod",
627 "utime",
628 "rename",
629 "link",
630 "symlink",
631 "readlink",
632 "mkdir",
633 "rmdir",
634 "open_dir",
635 "readdir",
636 "telldir",
637 "seekdir",
638 "rewinddir",
639 "closedir",
640 "fork",
641 "wait",
642 "waitpid",
643 "system",
644 "exec",
645 "kill",
646 "getppid",
647 "getpgrp",
648 "setpgrp",
649 "getpriority",
650 "setpriority",
651 "time",
652 "tms",
653 "localtime",
654 "gmtime",
655 "alarm",
656 "sleep",
657 "shmget",
658 "shmctl",
659 "shmread",
660 "shmwrite",
661 "msgget",
662 "msgctl",
663 "msgsnd",
664 "msgrcv",
665 "semget",
666 "semctl",
667 "semop",
668 "require",
669 "dofile",
670 "entereval",
671 "leaveeval",
672 "entertry",
673 "leavetry",
674 "ghbyname",
675 "ghbyaddr",
676 "ghostent",
677 "gnbyname",
678 "gnbyaddr",
679 "gnetent",
680 "gpbyname",
681 "gpbynumber",
682 "gprotoent",
683 "gsbyname",
684 "gsbyport",
685 "gservent",
686 "shostent",
687 "snetent",
688 "sprotoent",
689 "sservent",
690 "ehostent",
691 "enetent",
692 "eprotoent",
693 "eservent",
694 "gpwnam",
695 "gpwuid",
696 "gpwent",
697 "spwent",
698 "epwent",
699 "ggrnam",
700 "ggrgid",
701 "ggrent",
702 "sgrent",
703 "egrent",
704 "getlogin",
705 "syscall",
c0329465 706 "lock",
2faa37cc 707 "threadsv",
c07a80fd 708};
709#endif
710
711#ifndef DOINIT
712EXT char *op_desc[];
713#else
714EXT char *op_desc[] = {
79072805 715 "null operation",
93a17b20
LW
716 "stub",
717 "scalar",
79072805
LW
718 "pushmark",
719 "wantarray",
79072805 720 "constant item",
79072805
LW
721 "scalar variable",
722 "glob value",
c07a80fd 723 "glob elem",
93a17b20
LW
724 "private variable",
725 "private array",
726 "private hash",
ed6116ce 727 "private something",
79072805
LW
728 "push regexp",
729 "ref-to-glob cast",
a0d0e21e 730 "scalar deref",
79072805 731 "array length",
a0d0e21e
LW
732 "subroutine deref",
733 "anonymous subroutine",
c07a80fd 734 "subroutine prototype",
8990e307 735 "reference constructor",
a0d0e21e 736 "scalar ref constructor",
79072805
LW
737 "reference-type operator",
738 "bless",
739 "backticks",
740 "glob",
741 "<HANDLE>",
742 "append I/O operator",
463ee0b2 743 "regexp comp once",
79072805
LW
744 "regexp compilation",
745 "pattern match",
746 "substitution",
747 "substitution cont",
748 "character translation",
749 "scalar assignment",
750 "list assignment",
79072805 751 "chop",
a0d0e21e
LW
752 "scalar chop",
753 "safe chop",
754 "scalar safe chop",
79072805
LW
755 "defined operator",
756 "undef operator",
757 "study",
a0d0e21e 758 "match position",
79072805 759 "preincrement",
85e6fe83 760 "integer preincrement",
79072805 761 "predecrement",
85e6fe83 762 "integer predecrement",
79072805 763 "postincrement",
85e6fe83 764 "integer postincrement",
79072805 765 "postdecrement",
85e6fe83 766 "integer postdecrement",
79072805
LW
767 "exponentiation",
768 "multiplication",
85e6fe83 769 "integer multiplication",
79072805 770 "division",
85e6fe83 771 "integer division",
79072805 772 "modulus",
85e6fe83 773 "integer modulus",
79072805
LW
774 "repeat",
775 "addition",
776 "integer addition",
777 "subtraction",
85e6fe83 778 "integer subtraction",
79072805 779 "concatenation",
a0d0e21e 780 "string",
79072805
LW
781 "left bitshift",
782 "right bitshift",
783 "numeric lt",
85e6fe83 784 "integer lt",
79072805 785 "numeric gt",
85e6fe83 786 "integer gt",
79072805 787 "numeric le",
85e6fe83 788 "integer le",
79072805 789 "numeric ge",
85e6fe83 790 "integer ge",
79072805 791 "numeric eq",
85e6fe83 792 "integer eq",
79072805 793 "numeric ne",
85e6fe83 794 "integer ne",
a0d0e21e 795 "spaceship operator",
85e6fe83 796 "integer spaceship",
79072805
LW
797 "string lt",
798 "string gt",
799 "string le",
800 "string ge",
801 "string eq",
802 "string ne",
803 "string comparison",
a0d0e21e
LW
804 "bitwise and",
805 "bitwise xor",
806 "bitwise or",
79072805 807 "negate",
85e6fe83 808 "integer negate",
79072805
LW
809 "not",
810 "1's complement",
811 "atan2",
812 "sin",
813 "cos",
814 "rand",
815 "srand",
816 "exp",
817 "log",
818 "sqrt",
819 "int",
820 "hex",
821 "oct",
463ee0b2 822 "abs",
79072805
LW
823 "length",
824 "substr",
825 "vec",
826 "index",
827 "rindex",
828 "sprintf",
829 "formline",
830 "ord",
463ee0b2 831 "chr",
79072805
LW
832 "crypt",
833 "upper case first",
834 "lower case first",
835 "upper case",
836 "lower case",
a0d0e21e 837 "quote metachars",
79072805
LW
838 "array deref",
839 "known array element",
840 "array element",
841 "array slice",
842 "each",
843 "values",
844 "keys",
845 "delete",
a0d0e21e 846 "exists operator",
aa689395 847 "hash deref",
848 "hash elem",
849 "hash slice",
79072805
LW
850 "unpack",
851 "pack",
852 "split",
853 "join",
854 "list",
855 "list slice",
856 "anonymous list",
857 "anonymous hash",
858 "splice",
859 "push",
860 "pop",
861 "shift",
862 "unshift",
863 "sort",
864 "reverse",
865 "grep",
866 "grep iterator",
a0d0e21e
LW
867 "map",
868 "map iterator",
79072805
LW
869 "flipflop",
870 "range (or flip)",
871 "range (or flop)",
872 "logical and",
873 "logical or",
a0d0e21e 874 "logical xor",
79072805
LW
875 "conditional expression",
876 "logical and assignment",
877 "logical or assignment",
878 "method lookup",
879 "subroutine entry",
880 "subroutine exit",
881 "caller",
882 "warn",
883 "die",
884 "reset",
885 "line sequence",
886 "next statement",
93a17b20 887 "debug next statement",
79072805
LW
888 "unstack",
889 "block entry",
890 "block exit",
463ee0b2 891 "block",
79072805
LW
892 "foreach loop entry",
893 "foreach loop iterator",
894 "loop entry",
895 "loop exit",
896 "return",
897 "last",
898 "next",
899 "redo",
900 "dump",
901 "goto",
902 "exit",
79072805
LW
903 "open",
904 "close",
905 "pipe",
906 "fileno",
907 "umask",
908 "binmode",
463ee0b2
LW
909 "tie",
910 "untie",
c07a80fd 911 "tied",
79072805
LW
912 "dbmopen",
913 "dbmclose",
914 "select system call",
915 "select",
916 "getc",
917 "read",
918 "write",
919 "write exit",
463ee0b2 920 "printf",
79072805 921 "print",
c07a80fd 922 "sysopen",
137443ea 923 "sysseek",
79072805
LW
924 "sysread",
925 "syswrite",
926 "send",
927 "recv",
928 "eof",
929 "tell",
930 "seek",
931 "truncate",
932 "fcntl",
933 "ioctl",
934 "flock",
935 "socket",
936 "socketpair",
937 "bind",
938 "connect",
939 "listen",
940 "accept",
941 "shutdown",
942 "getsockopt",
943 "setsockopt",
944 "getsockname",
945 "getpeername",
946 "lstat",
947 "stat",
948 "-R",
949 "-W",
950 "-X",
951 "-r",
952 "-w",
953 "-x",
954 "-e",
955 "-O",
956 "-o",
957 "-z",
958 "-s",
959 "-M",
960 "-A",
961 "-C",
962 "-S",
963 "-c",
964 "-b",
965 "-f",
966 "-d",
967 "-p",
968 "-l",
969 "-u",
970 "-g",
971 "-k",
972 "-t",
973 "-T",
974 "-B",
975 "chdir",
976 "chown",
977 "chroot",
978 "unlink",
979 "chmod",
980 "utime",
981 "rename",
982 "link",
983 "symlink",
984 "readlink",
985 "mkdir",
986 "rmdir",
987 "opendir",
988 "readdir",
989 "telldir",
990 "seekdir",
991 "rewinddir",
992 "closedir",
993 "fork",
994 "wait",
995 "waitpid",
996 "system",
997 "exec",
998 "kill",
999 "getppid",
1000 "getpgrp",
1001 "setpgrp",
1002 "getpriority",
1003 "setpriority",
1004 "time",
1005 "times",
1006 "localtime",
1007 "gmtime",
1008 "alarm",
1009 "sleep",
1010 "shmget",
1011 "shmctl",
1012 "shmread",
1013 "shmwrite",
1014 "msgget",
1015 "msgctl",
1016 "msgsnd",
1017 "msgrcv",
1018 "semget",
1019 "semctl",
1020 "semop",
1021 "require",
1022 "do 'file'",
1023 "eval string",
1024 "eval exit",
79072805
LW
1025 "eval block",
1026 "eval block exit",
1027 "gethostbyname",
1028 "gethostbyaddr",
1029 "gethostent",
1030 "getnetbyname",
1031 "getnetbyaddr",
1032 "getnetent",
1033 "getprotobyname",
1034 "getprotobynumber",
1035 "getprotoent",
1036 "getservbyname",
1037 "getservbyport",
1038 "getservent",
1039 "sethostent",
1040 "setnetent",
1041 "setprotoent",
1042 "setservent",
1043 "endhostent",
1044 "endnetent",
1045 "endprotoent",
1046 "endservent",
1047 "getpwnam",
1048 "getpwuid",
1049 "getpwent",
1050 "setpwent",
1051 "endpwent",
1052 "getgrnam",
1053 "getgrgid",
1054 "getgrent",
1055 "setgrent",
1056 "endgrent",
1057 "getlogin",
1058 "syscall",
c0329465 1059 "lock",
2faa37cc 1060 "per-thread variable",
79072805
LW
1061};
1062#endif
1063
76e3520e 1064#ifndef PERL_OBJECT
4e35701f
NIS
1065START_EXTERN_C
1066
5196be3e
MB
1067OP * ck_anoncode _((OP* o));
1068OP * ck_bitop _((OP* o));
1069OP * ck_concat _((OP* o));
1070OP * ck_delete _((OP* o));
1071OP * ck_eof _((OP* o));
1072OP * ck_eval _((OP* o));
1073OP * ck_exec _((OP* o));
1074OP * ck_exists _((OP* o));
1075OP * ck_ftst _((OP* o));
1076OP * ck_fun _((OP* o));
1077OP * ck_fun_locale _((OP* o));
1078OP * ck_glob _((OP* o));
1079OP * ck_grep _((OP* o));
1080OP * ck_index _((OP* o));
1081OP * ck_lengthconst _((OP* o));
1082OP * ck_lfun _((OP* o));
1083OP * ck_listiob _((OP* o));
1084OP * ck_match _((OP* o));
1085OP * ck_null _((OP* o));
1086OP * ck_repeat _((OP* o));
1087OP * ck_require _((OP* o));
1088OP * ck_rfun _((OP* o));
1089OP * ck_rvconst _((OP* o));
1090OP * ck_scmp _((OP* o));
1091OP * ck_select _((OP* o));
1092OP * ck_shift _((OP* o));
1093OP * ck_sort _((OP* o));
1094OP * ck_spair _((OP* o));
1095OP * ck_split _((OP* o));
1096OP * ck_subr _((OP* o));
1097OP * ck_svconst _((OP* o));
1098OP * ck_trunc _((OP* o));
79072805 1099
5196be3e
MB
1100OP * pp_null _((ARGSproto));
1101OP * pp_stub _((ARGSproto));
1102OP * pp_scalar _((ARGSproto));
1103OP * pp_pushmark _((ARGSproto));
1104OP * pp_wantarray _((ARGSproto));
1105OP * pp_const _((ARGSproto));
1106OP * pp_gvsv _((ARGSproto));
1107OP * pp_gv _((ARGSproto));
1108OP * pp_gelem _((ARGSproto));
1109OP * pp_padsv _((ARGSproto));
1110OP * pp_padav _((ARGSproto));
1111OP * pp_padhv _((ARGSproto));
1112OP * pp_padany _((ARGSproto));
1113OP * pp_pushre _((ARGSproto));
1114OP * pp_rv2gv _((ARGSproto));
1115OP * pp_rv2sv _((ARGSproto));
1116OP * pp_av2arylen _((ARGSproto));
1117OP * pp_rv2cv _((ARGSproto));
1118OP * pp_anoncode _((ARGSproto));
1119OP * pp_prototype _((ARGSproto));
1120OP * pp_refgen _((ARGSproto));
1121OP * pp_srefgen _((ARGSproto));
1122OP * pp_ref _((ARGSproto));
1123OP * pp_bless _((ARGSproto));
1124OP * pp_backtick _((ARGSproto));
1125OP * pp_glob _((ARGSproto));
1126OP * pp_readline _((ARGSproto));
1127OP * pp_rcatline _((ARGSproto));
1128OP * pp_regcmaybe _((ARGSproto));
1129OP * pp_regcomp _((ARGSproto));
1130OP * pp_match _((ARGSproto));
1131OP * pp_subst _((ARGSproto));
1132OP * pp_substcont _((ARGSproto));
1133OP * pp_trans _((ARGSproto));
1134OP * pp_sassign _((ARGSproto));
1135OP * pp_aassign _((ARGSproto));
1136OP * pp_chop _((ARGSproto));
1137OP * pp_schop _((ARGSproto));
1138OP * pp_chomp _((ARGSproto));
1139OP * pp_schomp _((ARGSproto));
1140OP * pp_defined _((ARGSproto));
1141OP * pp_undef _((ARGSproto));
1142OP * pp_study _((ARGSproto));
1143OP * pp_pos _((ARGSproto));
1144OP * pp_preinc _((ARGSproto));
1145OP * pp_i_preinc _((ARGSproto));
1146OP * pp_predec _((ARGSproto));
1147OP * pp_i_predec _((ARGSproto));
1148OP * pp_postinc _((ARGSproto));
1149OP * pp_i_postinc _((ARGSproto));
1150OP * pp_postdec _((ARGSproto));
1151OP * pp_i_postdec _((ARGSproto));
1152OP * pp_pow _((ARGSproto));
1153OP * pp_multiply _((ARGSproto));
1154OP * pp_i_multiply _((ARGSproto));
1155OP * pp_divide _((ARGSproto));
1156OP * pp_i_divide _((ARGSproto));
1157OP * pp_modulo _((ARGSproto));
1158OP * pp_i_modulo _((ARGSproto));
1159OP * pp_repeat _((ARGSproto));
1160OP * pp_add _((ARGSproto));
1161OP * pp_i_add _((ARGSproto));
1162OP * pp_subtract _((ARGSproto));
1163OP * pp_i_subtract _((ARGSproto));
1164OP * pp_concat _((ARGSproto));
1165OP * pp_stringify _((ARGSproto));
1166OP * pp_left_shift _((ARGSproto));
1167OP * pp_right_shift _((ARGSproto));
1168OP * pp_lt _((ARGSproto));
1169OP * pp_i_lt _((ARGSproto));
1170OP * pp_gt _((ARGSproto));
1171OP * pp_i_gt _((ARGSproto));
1172OP * pp_le _((ARGSproto));
1173OP * pp_i_le _((ARGSproto));
1174OP * pp_ge _((ARGSproto));
1175OP * pp_i_ge _((ARGSproto));
1176OP * pp_eq _((ARGSproto));
1177OP * pp_i_eq _((ARGSproto));
1178OP * pp_ne _((ARGSproto));
1179OP * pp_i_ne _((ARGSproto));
1180OP * pp_ncmp _((ARGSproto));
1181OP * pp_i_ncmp _((ARGSproto));
1182OP * pp_slt _((ARGSproto));
1183OP * pp_sgt _((ARGSproto));
1184OP * pp_sle _((ARGSproto));
1185OP * pp_sge _((ARGSproto));
1186OP * pp_seq _((ARGSproto));
1187OP * pp_sne _((ARGSproto));
1188OP * pp_scmp _((ARGSproto));
1189OP * pp_bit_and _((ARGSproto));
1190OP * pp_bit_xor _((ARGSproto));
1191OP * pp_bit_or _((ARGSproto));
1192OP * pp_negate _((ARGSproto));
1193OP * pp_i_negate _((ARGSproto));
1194OP * pp_not _((ARGSproto));
1195OP * pp_complement _((ARGSproto));
1196OP * pp_atan2 _((ARGSproto));
1197OP * pp_sin _((ARGSproto));
1198OP * pp_cos _((ARGSproto));
1199OP * pp_rand _((ARGSproto));
1200OP * pp_srand _((ARGSproto));
1201OP * pp_exp _((ARGSproto));
1202OP * pp_log _((ARGSproto));
1203OP * pp_sqrt _((ARGSproto));
1204OP * pp_int _((ARGSproto));
1205OP * pp_hex _((ARGSproto));
1206OP * pp_oct _((ARGSproto));
1207OP * pp_abs _((ARGSproto));
1208OP * pp_length _((ARGSproto));
1209OP * pp_substr _((ARGSproto));
1210OP * pp_vec _((ARGSproto));
1211OP * pp_index _((ARGSproto));
1212OP * pp_rindex _((ARGSproto));
1213OP * pp_sprintf _((ARGSproto));
1214OP * pp_formline _((ARGSproto));
1215OP * pp_ord _((ARGSproto));
1216OP * pp_chr _((ARGSproto));
1217OP * pp_crypt _((ARGSproto));
1218OP * pp_ucfirst _((ARGSproto));
1219OP * pp_lcfirst _((ARGSproto));
1220OP * pp_uc _((ARGSproto));
1221OP * pp_lc _((ARGSproto));
1222OP * pp_quotemeta _((ARGSproto));
1223OP * pp_rv2av _((ARGSproto));
1224OP * pp_aelemfast _((ARGSproto));
1225OP * pp_aelem _((ARGSproto));
1226OP * pp_aslice _((ARGSproto));
1227OP * pp_each _((ARGSproto));
1228OP * pp_values _((ARGSproto));
1229OP * pp_keys _((ARGSproto));
1230OP * pp_delete _((ARGSproto));
1231OP * pp_exists _((ARGSproto));
1232OP * pp_rv2hv _((ARGSproto));
1233OP * pp_helem _((ARGSproto));
1234OP * pp_hslice _((ARGSproto));
1235OP * pp_unpack _((ARGSproto));
1236OP * pp_pack _((ARGSproto));
1237OP * pp_split _((ARGSproto));
1238OP * pp_join _((ARGSproto));
1239OP * pp_list _((ARGSproto));
1240OP * pp_lslice _((ARGSproto));
1241OP * pp_anonlist _((ARGSproto));
1242OP * pp_anonhash _((ARGSproto));
1243OP * pp_splice _((ARGSproto));
1244OP * pp_push _((ARGSproto));
1245OP * pp_pop _((ARGSproto));
1246OP * pp_shift _((ARGSproto));
1247OP * pp_unshift _((ARGSproto));
1248OP * pp_sort _((ARGSproto));
1249OP * pp_reverse _((ARGSproto));
1250OP * pp_grepstart _((ARGSproto));
1251OP * pp_grepwhile _((ARGSproto));
1252OP * pp_mapstart _((ARGSproto));
1253OP * pp_mapwhile _((ARGSproto));
1254OP * pp_range _((ARGSproto));
1255OP * pp_flip _((ARGSproto));
1256OP * pp_flop _((ARGSproto));
1257OP * pp_and _((ARGSproto));
1258OP * pp_or _((ARGSproto));
1259OP * pp_xor _((ARGSproto));
1260OP * pp_cond_expr _((ARGSproto));
1261OP * pp_andassign _((ARGSproto));
1262OP * pp_orassign _((ARGSproto));
1263OP * pp_method _((ARGSproto));
1264OP * pp_entersub _((ARGSproto));
1265OP * pp_leavesub _((ARGSproto));
1266OP * pp_caller _((ARGSproto));
1267OP * pp_warn _((ARGSproto));
1268OP * pp_die _((ARGSproto));
1269OP * pp_reset _((ARGSproto));
1270OP * pp_lineseq _((ARGSproto));
1271OP * pp_nextstate _((ARGSproto));
1272OP * pp_dbstate _((ARGSproto));
1273OP * pp_unstack _((ARGSproto));
1274OP * pp_enter _((ARGSproto));
1275OP * pp_leave _((ARGSproto));
1276OP * pp_scope _((ARGSproto));
1277OP * pp_enteriter _((ARGSproto));
1278OP * pp_iter _((ARGSproto));
1279OP * pp_enterloop _((ARGSproto));
1280OP * pp_leaveloop _((ARGSproto));
1281OP * pp_return _((ARGSproto));
1282OP * pp_last _((ARGSproto));
1283OP * pp_next _((ARGSproto));
1284OP * pp_redo _((ARGSproto));
1285OP * pp_dump _((ARGSproto));
1286OP * pp_goto _((ARGSproto));
1287OP * pp_exit _((ARGSproto));
1288OP * pp_open _((ARGSproto));
1289OP * pp_close _((ARGSproto));
1290OP * pp_pipe_op _((ARGSproto));
1291OP * pp_fileno _((ARGSproto));
1292OP * pp_umask _((ARGSproto));
1293OP * pp_binmode _((ARGSproto));
1294OP * pp_tie _((ARGSproto));
1295OP * pp_untie _((ARGSproto));
1296OP * pp_tied _((ARGSproto));
1297OP * pp_dbmopen _((ARGSproto));
1298OP * pp_dbmclose _((ARGSproto));
1299OP * pp_sselect _((ARGSproto));
1300OP * pp_select _((ARGSproto));
1301OP * pp_getc _((ARGSproto));
1302OP * pp_read _((ARGSproto));
1303OP * pp_enterwrite _((ARGSproto));
1304OP * pp_leavewrite _((ARGSproto));
1305OP * pp_prtf _((ARGSproto));
1306OP * pp_print _((ARGSproto));
1307OP * pp_sysopen _((ARGSproto));
1308OP * pp_sysseek _((ARGSproto));
1309OP * pp_sysread _((ARGSproto));
1310OP * pp_syswrite _((ARGSproto));
1311OP * pp_send _((ARGSproto));
1312OP * pp_recv _((ARGSproto));
1313OP * pp_eof _((ARGSproto));
1314OP * pp_tell _((ARGSproto));
1315OP * pp_seek _((ARGSproto));
1316OP * pp_truncate _((ARGSproto));
1317OP * pp_fcntl _((ARGSproto));
1318OP * pp_ioctl _((ARGSproto));
1319OP * pp_flock _((ARGSproto));
1320OP * pp_socket _((ARGSproto));
1321OP * pp_sockpair _((ARGSproto));
1322OP * pp_bind _((ARGSproto));
1323OP * pp_connect _((ARGSproto));
1324OP * pp_listen _((ARGSproto));
1325OP * pp_accept _((ARGSproto));
1326OP * pp_shutdown _((ARGSproto));
1327OP * pp_gsockopt _((ARGSproto));
1328OP * pp_ssockopt _((ARGSproto));
1329OP * pp_getsockname _((ARGSproto));
1330OP * pp_getpeername _((ARGSproto));
1331OP * pp_lstat _((ARGSproto));
1332OP * pp_stat _((ARGSproto));
1333OP * pp_ftrread _((ARGSproto));
1334OP * pp_ftrwrite _((ARGSproto));
1335OP * pp_ftrexec _((ARGSproto));
1336OP * pp_fteread _((ARGSproto));
1337OP * pp_ftewrite _((ARGSproto));
1338OP * pp_fteexec _((ARGSproto));
1339OP * pp_ftis _((ARGSproto));
1340OP * pp_fteowned _((ARGSproto));
1341OP * pp_ftrowned _((ARGSproto));
1342OP * pp_ftzero _((ARGSproto));
1343OP * pp_ftsize _((ARGSproto));
1344OP * pp_ftmtime _((ARGSproto));
1345OP * pp_ftatime _((ARGSproto));
1346OP * pp_ftctime _((ARGSproto));
1347OP * pp_ftsock _((ARGSproto));
1348OP * pp_ftchr _((ARGSproto));
1349OP * pp_ftblk _((ARGSproto));
1350OP * pp_ftfile _((ARGSproto));
1351OP * pp_ftdir _((ARGSproto));
1352OP * pp_ftpipe _((ARGSproto));
1353OP * pp_ftlink _((ARGSproto));
1354OP * pp_ftsuid _((ARGSproto));
1355OP * pp_ftsgid _((ARGSproto));
1356OP * pp_ftsvtx _((ARGSproto));
1357OP * pp_fttty _((ARGSproto));
1358OP * pp_fttext _((ARGSproto));
1359OP * pp_ftbinary _((ARGSproto));
1360OP * pp_chdir _((ARGSproto));
1361OP * pp_chown _((ARGSproto));
1362OP * pp_chroot _((ARGSproto));
1363OP * pp_unlink _((ARGSproto));
1364OP * pp_chmod _((ARGSproto));
1365OP * pp_utime _((ARGSproto));
1366OP * pp_rename _((ARGSproto));
1367OP * pp_link _((ARGSproto));
1368OP * pp_symlink _((ARGSproto));
1369OP * pp_readlink _((ARGSproto));
1370OP * pp_mkdir _((ARGSproto));
1371OP * pp_rmdir _((ARGSproto));
1372OP * pp_open_dir _((ARGSproto));
1373OP * pp_readdir _((ARGSproto));
1374OP * pp_telldir _((ARGSproto));
1375OP * pp_seekdir _((ARGSproto));
1376OP * pp_rewinddir _((ARGSproto));
1377OP * pp_closedir _((ARGSproto));
1378OP * pp_fork _((ARGSproto));
1379OP * pp_wait _((ARGSproto));
1380OP * pp_waitpid _((ARGSproto));
1381OP * pp_system _((ARGSproto));
1382OP * pp_exec _((ARGSproto));
1383OP * pp_kill _((ARGSproto));
1384OP * pp_getppid _((ARGSproto));
1385OP * pp_getpgrp _((ARGSproto));
1386OP * pp_setpgrp _((ARGSproto));
1387OP * pp_getpriority _((ARGSproto));
1388OP * pp_setpriority _((ARGSproto));
1389OP * pp_time _((ARGSproto));
1390OP * pp_tms _((ARGSproto));
1391OP * pp_localtime _((ARGSproto));
1392OP * pp_gmtime _((ARGSproto));
1393OP * pp_alarm _((ARGSproto));
1394OP * pp_sleep _((ARGSproto));
1395OP * pp_shmget _((ARGSproto));
1396OP * pp_shmctl _((ARGSproto));
1397OP * pp_shmread _((ARGSproto));
1398OP * pp_shmwrite _((ARGSproto));
1399OP * pp_msgget _((ARGSproto));
1400OP * pp_msgctl _((ARGSproto));
1401OP * pp_msgsnd _((ARGSproto));
1402OP * pp_msgrcv _((ARGSproto));
1403OP * pp_semget _((ARGSproto));
1404OP * pp_semctl _((ARGSproto));
1405OP * pp_semop _((ARGSproto));
1406OP * pp_require _((ARGSproto));
1407OP * pp_dofile _((ARGSproto));
1408OP * pp_entereval _((ARGSproto));
1409OP * pp_leaveeval _((ARGSproto));
1410OP * pp_entertry _((ARGSproto));
1411OP * pp_leavetry _((ARGSproto));
1412OP * pp_ghbyname _((ARGSproto));
1413OP * pp_ghbyaddr _((ARGSproto));
1414OP * pp_ghostent _((ARGSproto));
1415OP * pp_gnbyname _((ARGSproto));
1416OP * pp_gnbyaddr _((ARGSproto));
1417OP * pp_gnetent _((ARGSproto));
1418OP * pp_gpbyname _((ARGSproto));
1419OP * pp_gpbynumber _((ARGSproto));
1420OP * pp_gprotoent _((ARGSproto));
1421OP * pp_gsbyname _((ARGSproto));
1422OP * pp_gsbyport _((ARGSproto));
1423OP * pp_gservent _((ARGSproto));
1424OP * pp_shostent _((ARGSproto));
1425OP * pp_snetent _((ARGSproto));
1426OP * pp_sprotoent _((ARGSproto));
1427OP * pp_sservent _((ARGSproto));
1428OP * pp_ehostent _((ARGSproto));
1429OP * pp_enetent _((ARGSproto));
1430OP * pp_eprotoent _((ARGSproto));
1431OP * pp_eservent _((ARGSproto));
1432OP * pp_gpwnam _((ARGSproto));
1433OP * pp_gpwuid _((ARGSproto));
1434OP * pp_gpwent _((ARGSproto));
1435OP * pp_spwent _((ARGSproto));
1436OP * pp_epwent _((ARGSproto));
1437OP * pp_ggrnam _((ARGSproto));
1438OP * pp_ggrgid _((ARGSproto));
1439OP * pp_ggrent _((ARGSproto));
1440OP * pp_sgrent _((ARGSproto));
1441OP * pp_egrent _((ARGSproto));
1442OP * pp_getlogin _((ARGSproto));
1443OP * pp_syscall _((ARGSproto));
c0329465 1444OP * pp_lock _((ARGSproto));
2faa37cc 1445OP * pp_threadsv _((ARGSproto));
79072805 1446
4e35701f 1447END_EXTERN_C
5d11ae5e 1448#endif /* PERL_OBJECT */
79072805
LW
1449
1450#ifndef DOINIT
76e3520e 1451EXT OP * (CPERLscope(*ppaddr)[])(ARGSproto);
79072805 1452#else
76e3520e
GS
1453#ifndef PERL_OBJECT
1454EXT OP * (CPERLscope(*ppaddr)[])(ARGSproto) = {
79072805 1455 pp_null,
93a17b20 1456 pp_stub,
79072805
LW
1457 pp_scalar,
1458 pp_pushmark,
1459 pp_wantarray,
79072805 1460 pp_const,
79072805
LW
1461 pp_gvsv,
1462 pp_gv,
c07a80fd 1463 pp_gelem,
93a17b20
LW
1464 pp_padsv,
1465 pp_padav,
1466 pp_padhv,
ed6116ce 1467 pp_padany,
79072805
LW
1468 pp_pushre,
1469 pp_rv2gv,
79072805
LW
1470 pp_rv2sv,
1471 pp_av2arylen,
1472 pp_rv2cv,
a0d0e21e 1473 pp_anoncode,
c07a80fd 1474 pp_prototype,
79072805 1475 pp_refgen,
a0d0e21e 1476 pp_srefgen,
79072805
LW
1477 pp_ref,
1478 pp_bless,
1479 pp_backtick,
1480 pp_glob,
1481 pp_readline,
1482 pp_rcatline,
463ee0b2 1483 pp_regcmaybe,
79072805
LW
1484 pp_regcomp,
1485 pp_match,
1486 pp_subst,
1487 pp_substcont,
1488 pp_trans,
1489 pp_sassign,
1490 pp_aassign,
79072805 1491 pp_chop,
a0d0e21e
LW
1492 pp_schop,
1493 pp_chomp,
1494 pp_schomp,
79072805
LW
1495 pp_defined,
1496 pp_undef,
1497 pp_study,
a0d0e21e 1498 pp_pos,
79072805 1499 pp_preinc,
85e6fe83 1500 pp_i_preinc,
79072805 1501 pp_predec,
85e6fe83 1502 pp_i_predec,
79072805 1503 pp_postinc,
85e6fe83 1504 pp_i_postinc,
79072805 1505 pp_postdec,
85e6fe83 1506 pp_i_postdec,
79072805
LW
1507 pp_pow,
1508 pp_multiply,
85e6fe83 1509 pp_i_multiply,
79072805 1510 pp_divide,
85e6fe83 1511 pp_i_divide,
79072805 1512 pp_modulo,
85e6fe83 1513 pp_i_modulo,
79072805
LW
1514 pp_repeat,
1515 pp_add,
85e6fe83 1516 pp_i_add,
79072805 1517 pp_subtract,
85e6fe83 1518 pp_i_subtract,
79072805 1519 pp_concat,
a0d0e21e 1520 pp_stringify,
79072805
LW
1521 pp_left_shift,
1522 pp_right_shift,
1523 pp_lt,
85e6fe83 1524 pp_i_lt,
79072805 1525 pp_gt,
85e6fe83 1526 pp_i_gt,
79072805 1527 pp_le,
85e6fe83 1528 pp_i_le,
79072805 1529 pp_ge,
85e6fe83 1530 pp_i_ge,
79072805 1531 pp_eq,
85e6fe83 1532 pp_i_eq,
79072805 1533 pp_ne,
85e6fe83 1534 pp_i_ne,
79072805 1535 pp_ncmp,
85e6fe83 1536 pp_i_ncmp,
79072805
LW
1537 pp_slt,
1538 pp_sgt,
1539 pp_sle,
1540 pp_sge,
1541 pp_seq,
1542 pp_sne,
1543 pp_scmp,
1544 pp_bit_and,
a0d0e21e 1545 pp_bit_xor,
79072805
LW
1546 pp_bit_or,
1547 pp_negate,
85e6fe83 1548 pp_i_negate,
79072805
LW
1549 pp_not,
1550 pp_complement,
1551 pp_atan2,
1552 pp_sin,
1553 pp_cos,
1554 pp_rand,
1555 pp_srand,
1556 pp_exp,
1557 pp_log,
1558 pp_sqrt,
1559 pp_int,
1560 pp_hex,
1561 pp_oct,
463ee0b2 1562 pp_abs,
79072805
LW
1563 pp_length,
1564 pp_substr,
1565 pp_vec,
1566 pp_index,
1567 pp_rindex,
1568 pp_sprintf,
1569 pp_formline,
1570 pp_ord,
463ee0b2 1571 pp_chr,
79072805
LW
1572 pp_crypt,
1573 pp_ucfirst,
1574 pp_lcfirst,
1575 pp_uc,
1576 pp_lc,
a0d0e21e 1577 pp_quotemeta,
79072805
LW
1578 pp_rv2av,
1579 pp_aelemfast,
1580 pp_aelem,
1581 pp_aslice,
1582 pp_each,
1583 pp_values,
1584 pp_keys,
1585 pp_delete,
a0d0e21e 1586 pp_exists,
79072805
LW
1587 pp_rv2hv,
1588 pp_helem,
1589 pp_hslice,
1590 pp_unpack,
1591 pp_pack,
1592 pp_split,
1593 pp_join,
1594 pp_list,
1595 pp_lslice,
1596 pp_anonlist,
1597 pp_anonhash,
1598 pp_splice,
1599 pp_push,
1600 pp_pop,
1601 pp_shift,
1602 pp_unshift,
1603 pp_sort,
1604 pp_reverse,
1605 pp_grepstart,
1606 pp_grepwhile,
a0d0e21e
LW
1607 pp_mapstart,
1608 pp_mapwhile,
79072805
LW
1609 pp_range,
1610 pp_flip,
1611 pp_flop,
1612 pp_and,
1613 pp_or,
a0d0e21e 1614 pp_xor,
79072805
LW
1615 pp_cond_expr,
1616 pp_andassign,
1617 pp_orassign,
1618 pp_method,
a0d0e21e
LW
1619 pp_entersub,
1620 pp_leavesub,
79072805
LW
1621 pp_caller,
1622 pp_warn,
1623 pp_die,
1624 pp_reset,
1625 pp_lineseq,
93a17b20
LW
1626 pp_nextstate,
1627 pp_dbstate,
79072805
LW
1628 pp_unstack,
1629 pp_enter,
1630 pp_leave,
463ee0b2 1631 pp_scope,
79072805
LW
1632 pp_enteriter,
1633 pp_iter,
1634 pp_enterloop,
1635 pp_leaveloop,
1636 pp_return,
1637 pp_last,
1638 pp_next,
1639 pp_redo,
1640 pp_dump,
1641 pp_goto,
1642 pp_exit,
79072805
LW
1643 pp_open,
1644 pp_close,
1645 pp_pipe_op,
1646 pp_fileno,
1647 pp_umask,
1648 pp_binmode,
463ee0b2
LW
1649 pp_tie,
1650 pp_untie,
c07a80fd 1651 pp_tied,
79072805
LW
1652 pp_dbmopen,
1653 pp_dbmclose,
1654 pp_sselect,
1655 pp_select,
1656 pp_getc,
1657 pp_read,
1658 pp_enterwrite,
1659 pp_leavewrite,
1660 pp_prtf,
1661 pp_print,
c07a80fd 1662 pp_sysopen,
137443ea 1663 pp_sysseek,
79072805
LW
1664 pp_sysread,
1665 pp_syswrite,
1666 pp_send,
1667 pp_recv,
1668 pp_eof,
1669 pp_tell,
1670 pp_seek,
1671 pp_truncate,
1672 pp_fcntl,
1673 pp_ioctl,
1674 pp_flock,
1675 pp_socket,
1676 pp_sockpair,
1677 pp_bind,
1678 pp_connect,
1679 pp_listen,
1680 pp_accept,
1681 pp_shutdown,
1682 pp_gsockopt,
1683 pp_ssockopt,
1684 pp_getsockname,
1685 pp_getpeername,
1686 pp_lstat,
1687 pp_stat,
1688 pp_ftrread,
1689 pp_ftrwrite,
1690 pp_ftrexec,
1691 pp_fteread,
1692 pp_ftewrite,
1693 pp_fteexec,
1694 pp_ftis,
1695 pp_fteowned,
1696 pp_ftrowned,
1697 pp_ftzero,
1698 pp_ftsize,
1699 pp_ftmtime,
1700 pp_ftatime,
1701 pp_ftctime,
1702 pp_ftsock,
1703 pp_ftchr,
1704 pp_ftblk,
1705 pp_ftfile,
1706 pp_ftdir,
1707 pp_ftpipe,
1708 pp_ftlink,
1709 pp_ftsuid,
1710 pp_ftsgid,
1711 pp_ftsvtx,
1712 pp_fttty,
1713 pp_fttext,
1714 pp_ftbinary,
1715 pp_chdir,
1716 pp_chown,
1717 pp_chroot,
1718 pp_unlink,
1719 pp_chmod,
1720 pp_utime,
1721 pp_rename,
1722 pp_link,
1723 pp_symlink,
1724 pp_readlink,
1725 pp_mkdir,
1726 pp_rmdir,
1727 pp_open_dir,
1728 pp_readdir,
1729 pp_telldir,
1730 pp_seekdir,
1731 pp_rewinddir,
1732 pp_closedir,
1733 pp_fork,
1734 pp_wait,
1735 pp_waitpid,
1736 pp_system,
1737 pp_exec,
1738 pp_kill,
1739 pp_getppid,
1740 pp_getpgrp,
1741 pp_setpgrp,
1742 pp_getpriority,
1743 pp_setpriority,
1744 pp_time,
1745 pp_tms,
1746 pp_localtime,
1747 pp_gmtime,
1748 pp_alarm,
1749 pp_sleep,
1750 pp_shmget,
1751 pp_shmctl,
1752 pp_shmread,
1753 pp_shmwrite,
1754 pp_msgget,
1755 pp_msgctl,
1756 pp_msgsnd,
1757 pp_msgrcv,
1758 pp_semget,
1759 pp_semctl,
1760 pp_semop,
1761 pp_require,
1762 pp_dofile,
1763 pp_entereval,
1764 pp_leaveeval,
79072805
LW
1765 pp_entertry,
1766 pp_leavetry,
1767 pp_ghbyname,
1768 pp_ghbyaddr,
1769 pp_ghostent,
1770 pp_gnbyname,
1771 pp_gnbyaddr,
1772 pp_gnetent,
1773 pp_gpbyname,
1774 pp_gpbynumber,
1775 pp_gprotoent,
1776 pp_gsbyname,
1777 pp_gsbyport,
1778 pp_gservent,
1779 pp_shostent,
1780 pp_snetent,
1781 pp_sprotoent,
1782 pp_sservent,
1783 pp_ehostent,
1784 pp_enetent,
1785 pp_eprotoent,
1786 pp_eservent,
1787 pp_gpwnam,
1788 pp_gpwuid,
1789 pp_gpwent,
1790 pp_spwent,
1791 pp_epwent,
1792 pp_ggrnam,
1793 pp_ggrgid,
1794 pp_ggrent,
1795 pp_sgrent,
1796 pp_egrent,
1797 pp_getlogin,
1798 pp_syscall,
c0329465 1799 pp_lock,
2faa37cc 1800 pp_threadsv,
79072805 1801};
5d11ae5e 1802#endif /* PERL_OBJECT */
79072805
LW
1803#endif
1804
5d11ae5e 1805#ifndef DOINIT
76e3520e 1806EXT OP * (CPERLscope(*check)[]) _((OP *op));
79072805 1807#else
76e3520e
GS
1808#ifndef PERL_OBJECT
1809EXT OP * (CPERLscope(*check)[]) _((OP *op)) = {
79072805 1810 ck_null, /* null */
93a17b20
LW
1811 ck_null, /* stub */
1812 ck_fun, /* scalar */
79072805
LW
1813 ck_null, /* pushmark */
1814 ck_null, /* wantarray */
8990e307 1815 ck_svconst, /* const */
79072805
LW
1816 ck_null, /* gvsv */
1817 ck_null, /* gv */
c07a80fd 1818 ck_null, /* gelem */
93a17b20
LW
1819 ck_null, /* padsv */
1820 ck_null, /* padav */
1821 ck_null, /* padhv */
ed6116ce 1822 ck_null, /* padany */
79072805
LW
1823 ck_null, /* pushre */
1824 ck_rvconst, /* rv2gv */
79072805
LW
1825 ck_rvconst, /* rv2sv */
1826 ck_null, /* av2arylen */
1827 ck_rvconst, /* rv2cv */
5f05dabc 1828 ck_anoncode, /* anoncode */
c07a80fd 1829 ck_null, /* prototype */
a0d0e21e
LW
1830 ck_spair, /* refgen */
1831 ck_null, /* srefgen */
79072805
LW
1832 ck_fun, /* ref */
1833 ck_fun, /* bless */
1834 ck_null, /* backtick */
1835 ck_glob, /* glob */
1836 ck_null, /* readline */
1837 ck_null, /* rcatline */
463ee0b2 1838 ck_fun, /* regcmaybe */
79072805
LW
1839 ck_null, /* regcomp */
1840 ck_match, /* match */
1841 ck_null, /* subst */
1842 ck_null, /* substcont */
1843 ck_null, /* trans */
1844 ck_null, /* sassign */
1845 ck_null, /* aassign */
a0d0e21e 1846 ck_spair, /* chop */
79072805 1847 ck_null, /* schop */
a0d0e21e
LW
1848 ck_spair, /* chomp */
1849 ck_null, /* schomp */
8990e307 1850 ck_rfun, /* defined */
79072805
LW
1851 ck_lfun, /* undef */
1852 ck_fun, /* study */
a0d0e21e 1853 ck_lfun, /* pos */
79072805 1854 ck_lfun, /* preinc */
85e6fe83 1855 ck_lfun, /* i_preinc */
79072805 1856 ck_lfun, /* predec */
85e6fe83 1857 ck_lfun, /* i_predec */
79072805 1858 ck_lfun, /* postinc */
85e6fe83 1859 ck_lfun, /* i_postinc */
79072805 1860 ck_lfun, /* postdec */
85e6fe83 1861 ck_lfun, /* i_postdec */
79072805
LW
1862 ck_null, /* pow */
1863 ck_null, /* multiply */
85e6fe83 1864 ck_null, /* i_multiply */
79072805 1865 ck_null, /* divide */
85e6fe83 1866 ck_null, /* i_divide */
79072805 1867 ck_null, /* modulo */
85e6fe83 1868 ck_null, /* i_modulo */
79072805
LW
1869 ck_repeat, /* repeat */
1870 ck_null, /* add */
85e6fe83 1871 ck_null, /* i_add */
79072805 1872 ck_null, /* subtract */
85e6fe83 1873 ck_null, /* i_subtract */
79072805 1874 ck_concat, /* concat */
a0d0e21e 1875 ck_fun, /* stringify */
55497cff 1876 ck_bitop, /* left_shift */
1877 ck_bitop, /* right_shift */
79072805 1878 ck_null, /* lt */
85e6fe83 1879 ck_null, /* i_lt */
79072805 1880 ck_null, /* gt */
85e6fe83 1881 ck_null, /* i_gt */
79072805 1882 ck_null, /* le */
85e6fe83 1883 ck_null, /* i_le */
79072805 1884 ck_null, /* ge */
85e6fe83 1885 ck_null, /* i_ge */
79072805 1886 ck_null, /* eq */
85e6fe83 1887 ck_null, /* i_eq */
79072805 1888 ck_null, /* ne */
85e6fe83 1889 ck_null, /* i_ne */
79072805 1890 ck_null, /* ncmp */
85e6fe83 1891 ck_null, /* i_ncmp */
bbce6d69 1892 ck_scmp, /* slt */
1893 ck_scmp, /* sgt */
1894 ck_scmp, /* sle */
1895 ck_scmp, /* sge */
36477c24 1896 ck_null, /* seq */
1897 ck_null, /* sne */
bbce6d69 1898 ck_scmp, /* scmp */
55497cff 1899 ck_bitop, /* bit_and */
1900 ck_bitop, /* bit_xor */
1901 ck_bitop, /* bit_or */
79072805 1902 ck_null, /* negate */
85e6fe83 1903 ck_null, /* i_negate */
79072805 1904 ck_null, /* not */
55497cff 1905 ck_bitop, /* complement */
79072805
LW
1906 ck_fun, /* atan2 */
1907 ck_fun, /* sin */
1908 ck_fun, /* cos */
1909 ck_fun, /* rand */
1910 ck_fun, /* srand */
1911 ck_fun, /* exp */
1912 ck_fun, /* log */
1913 ck_fun, /* sqrt */
1914 ck_fun, /* int */
1915 ck_fun, /* hex */
1916 ck_fun, /* oct */
463ee0b2 1917 ck_fun, /* abs */
79072805
LW
1918 ck_lengthconst, /* length */
1919 ck_fun, /* substr */
1920 ck_fun, /* vec */
1921 ck_index, /* index */
1922 ck_index, /* rindex */
bbce6d69 1923 ck_fun_locale, /* sprintf */
1924 ck_fun, /* formline */
79072805 1925 ck_fun, /* ord */
463ee0b2 1926 ck_fun, /* chr */
79072805 1927 ck_fun, /* crypt */
bbce6d69 1928 ck_fun_locale, /* ucfirst */
1929 ck_fun_locale, /* lcfirst */
1930 ck_fun_locale, /* uc */
1931 ck_fun_locale, /* lc */
a0d0e21e 1932 ck_fun, /* quotemeta */
79072805
LW
1933 ck_rvconst, /* rv2av */
1934 ck_null, /* aelemfast */
8990e307 1935 ck_null, /* aelem */
79072805
LW
1936 ck_null, /* aslice */
1937 ck_fun, /* each */
1938 ck_fun, /* values */
1939 ck_fun, /* keys */
a0d0e21e 1940 ck_delete, /* delete */
5f05dabc 1941 ck_exists, /* exists */
79072805
LW
1942 ck_rvconst, /* rv2hv */
1943 ck_null, /* helem */
1944 ck_null, /* hslice */
1945 ck_fun, /* unpack */
1946 ck_fun, /* pack */
1947 ck_split, /* split */
1948 ck_fun, /* join */
1949 ck_null, /* list */
1950 ck_null, /* lslice */
a0d0e21e
LW
1951 ck_fun, /* anonlist */
1952 ck_fun, /* anonhash */
79072805
LW
1953 ck_fun, /* splice */
1954 ck_fun, /* push */
1955 ck_shift, /* pop */
1956 ck_shift, /* shift */
1957 ck_fun, /* unshift */
1958 ck_sort, /* sort */
1959 ck_fun, /* reverse */
1960 ck_grep, /* grepstart */
1961 ck_null, /* grepwhile */
a0d0e21e
LW
1962 ck_grep, /* mapstart */
1963 ck_null, /* mapwhile */
79072805
LW
1964 ck_null, /* range */
1965 ck_null, /* flip */
1966 ck_null, /* flop */
1967 ck_null, /* and */
1968 ck_null, /* or */
a0d0e21e 1969 ck_null, /* xor */
79072805
LW
1970 ck_null, /* cond_expr */
1971 ck_null, /* andassign */
1972 ck_null, /* orassign */
1973 ck_null, /* method */
a0d0e21e
LW
1974 ck_subr, /* entersub */
1975 ck_null, /* leavesub */
79072805
LW
1976 ck_fun, /* caller */
1977 ck_fun, /* warn */
1978 ck_fun, /* die */
1979 ck_fun, /* reset */
1980 ck_null, /* lineseq */
93a17b20
LW
1981 ck_null, /* nextstate */
1982 ck_null, /* dbstate */
79072805
LW
1983 ck_null, /* unstack */
1984 ck_null, /* enter */
1985 ck_null, /* leave */
463ee0b2 1986 ck_null, /* scope */
79072805
LW
1987 ck_null, /* enteriter */
1988 ck_null, /* iter */
1989 ck_null, /* enterloop */
1990 ck_null, /* leaveloop */
748a9306 1991 ck_null, /* return */
79072805
LW
1992 ck_null, /* last */
1993 ck_null, /* next */
1994 ck_null, /* redo */
1995 ck_null, /* dump */
1996 ck_null, /* goto */
1997 ck_fun, /* exit */
79072805
LW
1998 ck_fun, /* open */
1999 ck_fun, /* close */
2000 ck_fun, /* pipe_op */
2001 ck_fun, /* fileno */
2002 ck_fun, /* umask */
2003 ck_fun, /* binmode */
463ee0b2
LW
2004 ck_fun, /* tie */
2005 ck_fun, /* untie */
c07a80fd 2006 ck_fun, /* tied */
79072805
LW
2007 ck_fun, /* dbmopen */
2008 ck_fun, /* dbmclose */
2009 ck_select, /* sselect */
2010 ck_select, /* select */
2011 ck_eof, /* getc */
d1a002d4 2012 ck_fun, /* read */
79072805
LW
2013 ck_fun, /* enterwrite */
2014 ck_null, /* leavewrite */
2015 ck_listiob, /* prtf */
2016 ck_listiob, /* print */
c07a80fd 2017 ck_fun, /* sysopen */
137443ea 2018 ck_fun, /* sysseek */
d1a002d4 2019 ck_fun, /* sysread */
79072805
LW
2020 ck_fun, /* syswrite */
2021 ck_fun, /* send */
d1a002d4 2022 ck_fun, /* recv */
79072805
LW
2023 ck_eof, /* eof */
2024 ck_fun, /* tell */
2025 ck_fun, /* seek */
2026 ck_trunc, /* truncate */
2027 ck_fun, /* fcntl */
2028 ck_fun, /* ioctl */
2029 ck_fun, /* flock */
2030 ck_fun, /* socket */
2031 ck_fun, /* sockpair */
2032 ck_fun, /* bind */
2033 ck_fun, /* connect */
2034 ck_fun, /* listen */
2035 ck_fun, /* accept */
2036 ck_fun, /* shutdown */
2037 ck_fun, /* gsockopt */
2038 ck_fun, /* ssockopt */
2039 ck_fun, /* getsockname */
2040 ck_fun, /* getpeername */
2041 ck_ftst, /* lstat */
2042 ck_ftst, /* stat */
2043 ck_ftst, /* ftrread */
2044 ck_ftst, /* ftrwrite */
2045 ck_ftst, /* ftrexec */
2046 ck_ftst, /* fteread */
2047 ck_ftst, /* ftewrite */
2048 ck_ftst, /* fteexec */
2049 ck_ftst, /* ftis */
2050 ck_ftst, /* fteowned */
2051 ck_ftst, /* ftrowned */
2052 ck_ftst, /* ftzero */
2053 ck_ftst, /* ftsize */
2054 ck_ftst, /* ftmtime */
2055 ck_ftst, /* ftatime */
2056 ck_ftst, /* ftctime */
2057 ck_ftst, /* ftsock */
2058 ck_ftst, /* ftchr */
2059 ck_ftst, /* ftblk */
2060 ck_ftst, /* ftfile */
2061 ck_ftst, /* ftdir */
2062 ck_ftst, /* ftpipe */
2063 ck_ftst, /* ftlink */
2064 ck_ftst, /* ftsuid */
2065 ck_ftst, /* ftsgid */
2066 ck_ftst, /* ftsvtx */
2067 ck_ftst, /* fttty */
2068 ck_ftst, /* fttext */
2069 ck_ftst, /* ftbinary */
2070 ck_fun, /* chdir */
2071 ck_fun, /* chown */
2072 ck_fun, /* chroot */
2073 ck_fun, /* unlink */
2074 ck_fun, /* chmod */
2075 ck_fun, /* utime */
2076 ck_fun, /* rename */
2077 ck_fun, /* link */
2078 ck_fun, /* symlink */
2079 ck_fun, /* readlink */
2080 ck_fun, /* mkdir */
2081 ck_fun, /* rmdir */
2082 ck_fun, /* open_dir */
2083 ck_fun, /* readdir */
2084 ck_fun, /* telldir */
2085 ck_fun, /* seekdir */
2086 ck_fun, /* rewinddir */
2087 ck_fun, /* closedir */
2088 ck_null, /* fork */
2089 ck_null, /* wait */
2090 ck_fun, /* waitpid */
2091 ck_exec, /* system */
2092 ck_exec, /* exec */
2093 ck_fun, /* kill */
2094 ck_null, /* getppid */
2095 ck_fun, /* getpgrp */
2096 ck_fun, /* setpgrp */
2097 ck_fun, /* getpriority */
2098 ck_fun, /* setpriority */
2099 ck_null, /* time */
2100 ck_null, /* tms */
2101 ck_fun, /* localtime */
2102 ck_fun, /* gmtime */
2103 ck_fun, /* alarm */
2104 ck_fun, /* sleep */
2105 ck_fun, /* shmget */
2106 ck_fun, /* shmctl */
2107 ck_fun, /* shmread */
2108 ck_fun, /* shmwrite */
2109 ck_fun, /* msgget */
2110 ck_fun, /* msgctl */
2111 ck_fun, /* msgsnd */
2112 ck_fun, /* msgrcv */
2113 ck_fun, /* semget */
2114 ck_fun, /* semctl */
2115 ck_fun, /* semop */
8990e307 2116 ck_require, /* require */
79072805
LW
2117 ck_fun, /* dofile */
2118 ck_eval, /* entereval */
2119 ck_null, /* leaveeval */
79072805
LW
2120 ck_null, /* entertry */
2121 ck_null, /* leavetry */
2122 ck_fun, /* ghbyname */
2123 ck_fun, /* ghbyaddr */
2124 ck_null, /* ghostent */
2125 ck_fun, /* gnbyname */
2126 ck_fun, /* gnbyaddr */
2127 ck_null, /* gnetent */
2128 ck_fun, /* gpbyname */
2129 ck_fun, /* gpbynumber */
2130 ck_null, /* gprotoent */
2131 ck_fun, /* gsbyname */
2132 ck_fun, /* gsbyport */
2133 ck_null, /* gservent */
2134 ck_fun, /* shostent */
2135 ck_fun, /* snetent */
2136 ck_fun, /* sprotoent */
2137 ck_fun, /* sservent */
2138 ck_null, /* ehostent */
2139 ck_null, /* enetent */
2140 ck_null, /* eprotoent */
2141 ck_null, /* eservent */
2142 ck_fun, /* gpwnam */
2143 ck_fun, /* gpwuid */
2144 ck_null, /* gpwent */
2145 ck_null, /* spwent */
2146 ck_null, /* epwent */
2147 ck_fun, /* ggrnam */
2148 ck_fun, /* ggrgid */
2149 ck_null, /* ggrent */
2150 ck_null, /* sgrent */
2151 ck_null, /* egrent */
2152 ck_null, /* getlogin */
2153 ck_fun, /* syscall */
e55aaa0e 2154 ck_rfun, /* lock */
2faa37cc 2155 ck_null, /* threadsv */
79072805 2156};
5d11ae5e 2157#endif /* PERL_OBJECT */
79072805
LW
2158#endif
2159
2160#ifndef DOINIT
2161EXT U32 opargs[];
2162#else
a0d0e21e 2163EXT U32 opargs[] = {
79072805 2164 0x00000000, /* null */
93a17b20 2165 0x00000000, /* stub */
db173bac 2166 0x00001c04, /* scalar */
79072805
LW
2167 0x00000004, /* pushmark */
2168 0x00000014, /* wantarray */
db173bac
MB
2169 0x00000704, /* const */
2170 0x00000844, /* gvsv */
2171 0x00000844, /* gv */
2172 0x00011240, /* gelem */
748a9306
LW
2173 0x00000044, /* padsv */
2174 0x00000040, /* padav */
2175 0x00000040, /* padhv */
2176 0x00000040, /* padany */
db173bac
MB
2177 0x00000600, /* pushre */
2178 0x00000144, /* rv2gv */
2179 0x00000144, /* rv2sv */
2180 0x00000114, /* av2arylen */
2181 0x00000140, /* rv2cv */
2182 0x00000700, /* anoncode */
2183 0x00001c04, /* prototype */
5d11ae5e
SM
2184 0x00002101, /* refgen */
2185 0x00001106, /* srefgen */
db173bac
MB
2186 0x00009c8c, /* ref */
2187 0x00091504, /* bless */
2188 0x00000c08, /* backtick */
2189 0x00099508, /* glob */
2190 0x00000c08, /* readline */
2191 0x00000c08, /* rcatline */
2192 0x00001104, /* regcmaybe */
2193 0x00001304, /* regcomp */
2194 0x00000640, /* match */
2195 0x00001654, /* subst */
2196 0x00000354, /* substcont */
2197 0x00001914, /* trans */
79072805 2198 0x00000004, /* sassign */
db173bac
MB
2199 0x00022208, /* aassign */
2200 0x00002c0d, /* chop */
2201 0x00009c8c, /* schop */
2202 0x00002c0d, /* chomp */
2203 0x00009c8c, /* schomp */
2204 0x00009c94, /* defined */
2205 0x00009c04, /* undef */
2206 0x00009c84, /* study */
2207 0x00009c8c, /* pos */
2208 0x00001164, /* preinc */
2209 0x00001154, /* i_preinc */
2210 0x00001164, /* predec */
2211 0x00001154, /* i_predec */
2212 0x0000116c, /* postinc */
2213 0x0000115c, /* i_postinc */
2214 0x0000116c, /* postdec */
2215 0x0000115c, /* i_postdec */
2216 0x0001120e, /* pow */
2217 0x0001122e, /* multiply */
2218 0x0001121e, /* i_multiply */
2219 0x0001122e, /* divide */
2220 0x0001121e, /* i_divide */
2221 0x0001123e, /* modulo */
2222 0x0001121e, /* i_modulo */
2223 0x00012209, /* repeat */
2224 0x0001122e, /* add */
2225 0x0001121e, /* i_add */
2226 0x0001122e, /* subtract */
2227 0x0001121e, /* i_subtract */
2228 0x0001120e, /* concat */
2229 0x0000150e, /* stringify */
2230 0x0001120e, /* left_shift */
2231 0x0001120e, /* right_shift */
2232 0x00011236, /* lt */
2233 0x00011216, /* i_lt */
2234 0x00011236, /* gt */
2235 0x00011216, /* i_gt */
2236 0x00011236, /* le */
2237 0x00011216, /* i_le */
2238 0x00011236, /* ge */
2239 0x00011216, /* i_ge */
2240 0x00011236, /* eq */
2241 0x00011216, /* i_eq */
2242 0x00011236, /* ne */
2243 0x00011216, /* i_ne */
2244 0x0001123e, /* ncmp */
2245 0x0001121e, /* i_ncmp */
2246 0x00011216, /* slt */
2247 0x00011216, /* sgt */
2248 0x00011216, /* sle */
2249 0x00011216, /* sge */
2250 0x00011216, /* seq */
2251 0x00011216, /* sne */
2252 0x0001121e, /* scmp */
2253 0x0001120e, /* bit_and */
2254 0x0001120e, /* bit_xor */
2255 0x0001120e, /* bit_or */
2256 0x0000112e, /* negate */
2257 0x0000111e, /* i_negate */
2258 0x00001116, /* not */
2259 0x0000110e, /* complement */
2260 0x0001150e, /* atan2 */
2261 0x00009c8e, /* sin */
2262 0x00009c8e, /* cos */
2263 0x00009c0c, /* rand */
2264 0x00009c04, /* srand */
2265 0x00009c8e, /* exp */
2266 0x00009c8e, /* log */
2267 0x00009c8e, /* sqrt */
2268 0x00009c8e, /* int */
2269 0x00009c8e, /* hex */
2270 0x00009c8e, /* oct */
2271 0x00009c8e, /* abs */
2272 0x00009c9c, /* length */
48c036b1 2273 0x0991150c, /* substr */
db173bac
MB
2274 0x0011151c, /* vec */
2275 0x0091151c, /* index */
2276 0x0091151c, /* rindex */
2277 0x0002150f, /* sprintf */
2278 0x00021505, /* formline */
2279 0x00009c9e, /* ord */
2280 0x00009c8e, /* chr */
2281 0x0001150e, /* crypt */
2282 0x00009c8e, /* ucfirst */
2283 0x00009c8e, /* lcfirst */
2284 0x00009c8e, /* uc */
2285 0x00009c8e, /* lc */
2286 0x00009c8e, /* quotemeta */
2287 0x00000148, /* rv2av */
2288 0x00013804, /* aelemfast */
2289 0x00013204, /* aelem */
2290 0x00023501, /* aslice */
2291 0x00004c08, /* each */
2292 0x00004c08, /* values */
2293 0x00004c08, /* keys */
2294 0x00001c00, /* delete */
2295 0x00001c14, /* exists */
2296 0x00000148, /* rv2hv */
2297 0x00014204, /* helem */
2298 0x00024501, /* hslice */
2299 0x00011500, /* unpack */
2300 0x0002150d, /* pack */
2301 0x00111508, /* split */
2302 0x0002150d, /* join */
2303 0x00002501, /* list */
2304 0x00224200, /* lslice */
2305 0x00002505, /* anonlist */
2306 0x00002505, /* anonhash */
2307 0x02993501, /* splice */
2308 0x0002351d, /* push */
2309 0x00003c14, /* pop */
2310 0x00003c04, /* shift */
2311 0x0002351d, /* unshift */
2312 0x0002d501, /* sort */
2313 0x00002509, /* reverse */
2314 0x00025541, /* grepstart */
2315 0x00000348, /* grepwhile */
2316 0x00025541, /* mapstart */
2317 0x00000348, /* mapwhile */
2318 0x00011400, /* range */
2319 0x00011100, /* flip */
2320 0x00000100, /* flop */
2321 0x00000300, /* and */
2322 0x00000300, /* or */
2323 0x00011306, /* xor */
2324 0x00000440, /* cond_expr */
2325 0x00000304, /* andassign */
2326 0x00000304, /* orassign */
2327 0x00000140, /* method */
2328 0x00002149, /* entersub */
2329 0x00000100, /* leavesub */
2330 0x00009c08, /* caller */
2331 0x0000251d, /* warn */
2332 0x0000255d, /* die */
2333 0x00009c14, /* reset */
2334 0x00000500, /* lineseq */
2335 0x00000b04, /* nextstate */
2336 0x00000b04, /* dbstate */
79072805
LW
2337 0x00000004, /* unstack */
2338 0x00000000, /* enter */
db173bac
MB
2339 0x00000500, /* leave */
2340 0x00000500, /* scope */
2341 0x00000a40, /* enteriter */
79072805 2342 0x00000000, /* iter */
db173bac
MB
2343 0x00000a40, /* enterloop */
2344 0x00000200, /* leaveloop */
2345 0x00002541, /* return */
2346 0x00000e44, /* last */
2347 0x00000e44, /* next */
2348 0x00000e44, /* redo */
2349 0x00000e44, /* dump */
2350 0x00000e44, /* goto */
2351 0x00009c44, /* exit */
2352 0x0009651c, /* open */
2353 0x0000ec14, /* close */
2354 0x00066514, /* pipe_op */
2355 0x00006c1c, /* fileno */
2356 0x00009c1c, /* umask */
2357 0x00006c04, /* binmode */
2358 0x00217555, /* tie */
2359 0x00007c14, /* untie */
2360 0x00007c04, /* tied */
2361 0x00114514, /* dbmopen */
2362 0x00004c14, /* dbmclose */
2363 0x01111508, /* sselect */
2364 0x0000e50c, /* select */
2365 0x0000ec0c, /* getc */
2366 0x0917651d, /* read */
2367 0x0000ec54, /* enterwrite */
2368 0x00000100, /* leavewrite */
2369 0x0002e515, /* prtf */
2370 0x0002e515, /* print */
2371 0x09116504, /* sysopen */
2372 0x00116504, /* sysseek */
2373 0x0917651d, /* sysread */
2374 0x0911651d, /* syswrite */
2375 0x0911651d, /* send */
2376 0x0117651d, /* recv */
2377 0x0000ec14, /* eof */
2378 0x0000ec0c, /* tell */
2379 0x00116504, /* seek */
2380 0x00011514, /* truncate */
2381 0x0011650c, /* fcntl */
2382 0x0011650c, /* ioctl */
2383 0x0001651c, /* flock */
2384 0x01116514, /* socket */
2385 0x11166514, /* sockpair */
2386 0x00016514, /* bind */
2387 0x00016514, /* connect */
2388 0x00016514, /* listen */
2389 0x0006651c, /* accept */
2390 0x0001651c, /* shutdown */
2391 0x00116514, /* gsockopt */
2392 0x01116514, /* ssockopt */
2393 0x00006c14, /* getsockname */
2394 0x00006c14, /* getpeername */
2395 0x00006d80, /* lstat */
2396 0x00006d80, /* stat */
2397 0x00006d94, /* ftrread */
2398 0x00006d94, /* ftrwrite */
2399 0x00006d94, /* ftrexec */
2400 0x00006d94, /* fteread */
2401 0x00006d94, /* ftewrite */
2402 0x00006d94, /* fteexec */
2403 0x00006d94, /* ftis */
2404 0x00006d94, /* fteowned */
2405 0x00006d94, /* ftrowned */
2406 0x00006d94, /* ftzero */
2407 0x00006d9c, /* ftsize */
2408 0x00006d8c, /* ftmtime */
2409 0x00006d8c, /* ftatime */
2410 0x00006d8c, /* ftctime */
2411 0x00006d94, /* ftsock */
2412 0x00006d94, /* ftchr */
2413 0x00006d94, /* ftblk */
2414 0x00006d94, /* ftfile */
2415 0x00006d94, /* ftdir */
2416 0x00006d94, /* ftpipe */
2417 0x00006d94, /* ftlink */
2418 0x00006d94, /* ftsuid */
2419 0x00006d94, /* ftsgid */
2420 0x00006d94, /* ftsvtx */
2421 0x00006d14, /* fttty */
2422 0x00006d94, /* fttext */
2423 0x00006d94, /* ftbinary */
2424 0x00009c1c, /* chdir */
2425 0x0000251d, /* chown */
2426 0x00009c9c, /* chroot */
2427 0x0000259d, /* unlink */
2428 0x0000251d, /* chmod */
2429 0x0000251d, /* utime */
2430 0x0001151c, /* rename */
2431 0x0001151c, /* link */
2432 0x0001151c, /* symlink */
2433 0x00009c8c, /* readlink */
2434 0x0001151c, /* mkdir */
2435 0x00009c9c, /* rmdir */
2436 0x00016514, /* open_dir */
2437 0x00006c00, /* readdir */
2438 0x00006c0c, /* telldir */
2439 0x00016504, /* seekdir */
2440 0x00006c04, /* rewinddir */
2441 0x00006c14, /* closedir */
79072805
LW
2442 0x0000001c, /* fork */
2443 0x0000001c, /* wait */
db173bac
MB
2444 0x0001151c, /* waitpid */
2445 0x0002951d, /* system */
2446 0x0002955d, /* exec */
2447 0x0000255d, /* kill */
79072805 2448 0x0000001c, /* getppid */
db173bac
MB
2449 0x00009c1c, /* getpgrp */
2450 0x0009951c, /* setpgrp */
2451 0x0001151c, /* getpriority */
2452 0x0011151c, /* setpriority */
79072805
LW
2453 0x0000001c, /* time */
2454 0x00000000, /* tms */
db173bac
MB
2455 0x00009c08, /* localtime */
2456 0x00009c08, /* gmtime */
2457 0x00009c9c, /* alarm */
2458 0x00009c1c, /* sleep */
2459 0x0011151d, /* shmget */
2460 0x0011151d, /* shmctl */
2461 0x0111151d, /* shmread */
2462 0x0111151d, /* shmwrite */
2463 0x0001151d, /* msgget */
2464 0x0011151d, /* msgctl */
2465 0x0011151d, /* msgsnd */
2466 0x1111151d, /* msgrcv */
2467 0x0011151d, /* semget */
2468 0x0111151d, /* semctl */
2469 0x0001151d, /* semop */
2470 0x00009cc0, /* require */
2471 0x00001140, /* dofile */
2472 0x00001c40, /* entereval */
2473 0x00001100, /* leaveeval */
2474 0x00000300, /* entertry */
2475 0x00000500, /* leavetry */
2476 0x00001c00, /* ghbyname */
2477 0x00011500, /* ghbyaddr */
79072805 2478 0x00000000, /* ghostent */
db173bac
MB
2479 0x00001c00, /* gnbyname */
2480 0x00011500, /* gnbyaddr */
79072805 2481 0x00000000, /* gnetent */
db173bac
MB
2482 0x00001c00, /* gpbyname */
2483 0x00001500, /* gpbynumber */
79072805 2484 0x00000000, /* gprotoent */
db173bac
MB
2485 0x00011500, /* gsbyname */
2486 0x00011500, /* gsbyport */
79072805 2487 0x00000000, /* gservent */
db173bac
MB
2488 0x00001c14, /* shostent */
2489 0x00001c14, /* snetent */
2490 0x00001c14, /* sprotoent */
2491 0x00001c14, /* sservent */
93a17b20
LW
2492 0x00000014, /* ehostent */
2493 0x00000014, /* enetent */
2494 0x00000014, /* eprotoent */
2495 0x00000014, /* eservent */
db173bac
MB
2496 0x00001c00, /* gpwnam */
2497 0x00001c00, /* gpwuid */
79072805 2498 0x00000000, /* gpwent */
a0d0e21e
LW
2499 0x00000014, /* spwent */
2500 0x00000014, /* epwent */
db173bac
MB
2501 0x00001c00, /* ggrnam */
2502 0x00001c00, /* ggrgid */
79072805 2503 0x00000000, /* ggrent */
a0d0e21e
LW
2504 0x00000014, /* sgrent */
2505 0x00000014, /* egrent */
79072805 2506 0x0000000c, /* getlogin */
db173bac
MB
2507 0x0002151d, /* syscall */
2508 0x00001c04, /* lock */
2faa37cc 2509 0x00000044, /* threadsv */
79072805
LW
2510};
2511#endif