Commit | Line | Data |
---|---|---|
37442d52 RGS |
1 | /* -*- buffer-read-only: t -*- |
2 | * | |
d6376244 JH |
3 | * opcode.h |
4 | * | |
78102347 NC |
5 | * Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, |
6 | * 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 !!!!!!! | |
78102347 NC |
12 | * This file is built by regen/opcode.pl from its data. |
13 | * Any changes made here will be lost! | |
d6376244 | 14 | */ |
a27f85b3 | 15 | |
27da23d5 JH |
16 | #ifndef PERL_GLOBAL_STRUCT_INIT |
17 | ||
9561d06f NC |
18 | #define Perl_pp_scalar Perl_pp_null |
19 | #define Perl_pp_padany Perl_unimplemented_op | |
20 | #define Perl_pp_regcmaybe Perl_pp_null | |
bfa14884 | 21 | #define Perl_pp_transr Perl_pp_trans |
9561d06f NC |
22 | #define Perl_pp_chomp Perl_pp_chop |
23 | #define Perl_pp_schomp Perl_pp_schop | |
864dbfa3 | 24 | #define Perl_pp_i_preinc Perl_pp_preinc |
17058fe0 FC |
25 | #define Perl_pp_predec Perl_pp_preinc |
26 | #define Perl_pp_i_predec Perl_pp_preinc | |
864dbfa3 | 27 | #define Perl_pp_i_postinc Perl_pp_postinc |
c22c99bc FC |
28 | #define Perl_pp_postdec Perl_pp_postinc |
29 | #define Perl_pp_i_postdec Perl_pp_postinc | |
9561d06f NC |
30 | #define Perl_pp_slt Perl_pp_sle |
31 | #define Perl_pp_sgt Perl_pp_sle | |
32 | #define Perl_pp_sge Perl_pp_sle | |
33 | #define Perl_pp_bit_xor Perl_pp_bit_or | |
34 | #define Perl_pp_cos Perl_pp_sin | |
35 | #define Perl_pp_exp Perl_pp_sin | |
36 | #define Perl_pp_log Perl_pp_sin | |
37 | #define Perl_pp_sqrt Perl_pp_sin | |
38 | #define Perl_pp_hex Perl_pp_oct | |
39 | #define Perl_pp_rindex Perl_pp_index | |
40 | #define Perl_pp_lcfirst Perl_pp_ucfirst | |
bfa14884 | 41 | #define Perl_pp_aelemfast_lex Perl_pp_aelemfast |
9561d06f NC |
42 | #define Perl_pp_avalues Perl_pp_akeys |
43 | #define Perl_pp_values Perl_do_kv | |
44 | #define Perl_pp_keys Perl_do_kv | |
45 | #define Perl_pp_rv2hv Perl_pp_rv2av | |
46 | #define Perl_pp_pop Perl_pp_shift | |
47 | #define Perl_pp_mapstart Perl_unimplemented_op | |
48 | #define Perl_pp_dor Perl_pp_defined | |
49 | #define Perl_pp_andassign Perl_pp_and | |
50 | #define Perl_pp_orassign Perl_pp_or | |
51 | #define Perl_pp_dorassign Perl_pp_defined | |
52 | #define Perl_pp_lineseq Perl_pp_null | |
53 | #define Perl_pp_scope Perl_pp_null | |
54 | #define Perl_pp_dump Perl_pp_goto | |
55 | #define Perl_pp_dbmclose Perl_pp_untie | |
56 | #define Perl_pp_read Perl_pp_sysread | |
57 | #define Perl_pp_say Perl_pp_print | |
9561d06f NC |
58 | #define Perl_pp_seek Perl_pp_sysseek |
59 | #define Perl_pp_fcntl Perl_pp_ioctl | |
7627e6d0 | 60 | #ifdef HAS_SOCKET |
60504e18 | 61 | #define Perl_pp_send Perl_pp_syswrite |
9561d06f | 62 | #define Perl_pp_recv Perl_pp_sysread |
7627e6d0 NC |
63 | #else |
64 | #define Perl_pp_send Perl_unimplemented_op | |
65 | #define Perl_pp_recv Perl_unimplemented_op | |
66 | #define Perl_pp_socket Perl_unimplemented_op | |
67 | #endif | |
68 | #ifdef HAS_SOCKET | |
9561d06f NC |
69 | #define Perl_pp_connect Perl_pp_bind |
70 | #define Perl_pp_gsockopt Perl_pp_ssockopt | |
71 | #define Perl_pp_getsockname Perl_pp_getpeername | |
7627e6d0 NC |
72 | #else |
73 | #define Perl_pp_bind Perl_unimplemented_op | |
74 | #define Perl_pp_connect Perl_unimplemented_op | |
75 | #define Perl_pp_listen Perl_unimplemented_op | |
76 | #define Perl_pp_accept Perl_unimplemented_op | |
77 | #define Perl_pp_shutdown Perl_unimplemented_op | |
78 | #define Perl_pp_gsockopt Perl_unimplemented_op | |
79 | #define Perl_pp_ssockopt Perl_unimplemented_op | |
80 | #define Perl_pp_getsockname Perl_unimplemented_op | |
81 | #define Perl_pp_getpeername Perl_unimplemented_op | |
82 | #endif | |
9561d06f NC |
83 | #define Perl_pp_lstat Perl_pp_stat |
84 | #define Perl_pp_ftrwrite Perl_pp_ftrread | |
85 | #define Perl_pp_ftrexec Perl_pp_ftrread | |
86 | #define Perl_pp_fteread Perl_pp_ftrread | |
87 | #define Perl_pp_ftewrite Perl_pp_ftrread | |
88 | #define Perl_pp_fteexec Perl_pp_ftrread | |
89 | #define Perl_pp_ftsize Perl_pp_ftis | |
90 | #define Perl_pp_ftmtime Perl_pp_ftis | |
91 | #define Perl_pp_ftatime Perl_pp_ftis | |
92 | #define Perl_pp_ftctime Perl_pp_ftis | |
93 | #define Perl_pp_fteowned Perl_pp_ftrowned | |
94 | #define Perl_pp_ftzero Perl_pp_ftrowned | |
95 | #define Perl_pp_ftsock Perl_pp_ftrowned | |
96 | #define Perl_pp_ftchr Perl_pp_ftrowned | |
97 | #define Perl_pp_ftblk Perl_pp_ftrowned | |
98 | #define Perl_pp_ftfile Perl_pp_ftrowned | |
99 | #define Perl_pp_ftdir Perl_pp_ftrowned | |
100 | #define Perl_pp_ftpipe Perl_pp_ftrowned | |
101 | #define Perl_pp_ftsuid Perl_pp_ftrowned | |
102 | #define Perl_pp_ftsgid Perl_pp_ftrowned | |
103 | #define Perl_pp_ftsvtx Perl_pp_ftrowned | |
104 | #define Perl_pp_ftbinary Perl_pp_fttext | |
105 | #define Perl_pp_unlink Perl_pp_chown | |
106 | #define Perl_pp_chmod Perl_pp_chown | |
107 | #define Perl_pp_utime Perl_pp_chown | |
108 | #define Perl_pp_symlink Perl_pp_link | |
109 | #define Perl_pp_kill Perl_pp_chown | |
110 | #define Perl_pp_localtime Perl_pp_gmtime | |
111 | #define Perl_pp_shmget Perl_pp_semget | |
112 | #define Perl_pp_shmctl Perl_pp_semctl | |
113 | #define Perl_pp_shmread Perl_pp_shmwrite | |
114 | #define Perl_pp_msgget Perl_pp_semget | |
115 | #define Perl_pp_msgctl Perl_pp_semctl | |
116 | #define Perl_pp_msgsnd Perl_pp_shmwrite | |
117 | #define Perl_pp_msgrcv Perl_pp_shmwrite | |
118 | #define Perl_pp_semop Perl_pp_shmwrite | |
119 | #define Perl_pp_dofile Perl_pp_require | |
120 | #define Perl_pp_ghbyname Perl_pp_ghostent | |
121 | #define Perl_pp_ghbyaddr Perl_pp_ghostent | |
122 | #define Perl_pp_gnbyname Perl_pp_gnetent | |
123 | #define Perl_pp_gnbyaddr Perl_pp_gnetent | |
124 | #define Perl_pp_gpbyname Perl_pp_gprotoent | |
125 | #define Perl_pp_gpbynumber Perl_pp_gprotoent | |
126 | #define Perl_pp_gsbyname Perl_pp_gservent | |
127 | #define Perl_pp_gsbyport Perl_pp_gservent | |
396166e1 NC |
128 | #define Perl_pp_snetent Perl_pp_shostent |
129 | #define Perl_pp_sprotoent Perl_pp_shostent | |
130 | #define Perl_pp_sservent Perl_pp_shostent | |
d8ef1fcd NC |
131 | #define Perl_pp_enetent Perl_pp_ehostent |
132 | #define Perl_pp_eprotoent Perl_pp_ehostent | |
133 | #define Perl_pp_eservent Perl_pp_ehostent | |
9561d06f NC |
134 | #define Perl_pp_gpwnam Perl_pp_gpwent |
135 | #define Perl_pp_gpwuid Perl_pp_gpwent | |
720d5dbf NC |
136 | #define Perl_pp_spwent Perl_pp_ehostent |
137 | #define Perl_pp_epwent Perl_pp_ehostent | |
9561d06f NC |
138 | #define Perl_pp_ggrnam Perl_pp_ggrent |
139 | #define Perl_pp_ggrgid Perl_pp_ggrent | |
720d5dbf NC |
140 | #define Perl_pp_sgrent Perl_pp_ehostent |
141 | #define Perl_pp_egrent Perl_pp_ehostent | |
9561d06f NC |
142 | #define Perl_pp_custom Perl_unimplemented_op |
143 | #define Perl_pp_reach Perl_pp_rkeys | |
144 | #define Perl_pp_rvalues Perl_pp_rkeys | |
73c4f7a1 GS |
145 | START_EXTERN_C |
146 | ||
79072805 | 147 | #ifndef DOINIT |
27da23d5 | 148 | EXTCONST char* const PL_op_name[]; |
79072805 | 149 | #else |
27da23d5 | 150 | EXTCONST char* const PL_op_name[] = { |
c07a80fd | 151 | "null", |
152 | "stub", | |
153 | "scalar", | |
154 | "pushmark", | |
155 | "wantarray", | |
156 | "const", | |
157 | "gvsv", | |
158 | "gv", | |
159 | "gelem", | |
160 | "padsv", | |
161 | "padav", | |
162 | "padhv", | |
163 | "padany", | |
164 | "pushre", | |
165 | "rv2gv", | |
166 | "rv2sv", | |
167 | "av2arylen", | |
168 | "rv2cv", | |
169 | "anoncode", | |
170 | "prototype", | |
171 | "refgen", | |
172 | "srefgen", | |
173 | "ref", | |
174 | "bless", | |
175 | "backtick", | |
176 | "glob", | |
177 | "readline", | |
178 | "rcatline", | |
179 | "regcmaybe", | |
2cd61cdb | 180 | "regcreset", |
c07a80fd | 181 | "regcomp", |
182 | "match", | |
8782bef2 | 183 | "qr", |
c07a80fd | 184 | "subst", |
185 | "substcont", | |
186 | "trans", | |
bfa14884 | 187 | "transr", |
c07a80fd | 188 | "sassign", |
189 | "aassign", | |
190 | "chop", | |
191 | "schop", | |
192 | "chomp", | |
193 | "schomp", | |
194 | "defined", | |
195 | "undef", | |
196 | "study", | |
197 | "pos", | |
198 | "preinc", | |
199 | "i_preinc", | |
200 | "predec", | |
201 | "i_predec", | |
202 | "postinc", | |
203 | "i_postinc", | |
204 | "postdec", | |
205 | "i_postdec", | |
206 | "pow", | |
207 | "multiply", | |
208 | "i_multiply", | |
209 | "divide", | |
210 | "i_divide", | |
211 | "modulo", | |
212 | "i_modulo", | |
213 | "repeat", | |
214 | "add", | |
215 | "i_add", | |
216 | "subtract", | |
217 | "i_subtract", | |
218 | "concat", | |
219 | "stringify", | |
220 | "left_shift", | |
221 | "right_shift", | |
222 | "lt", | |
223 | "i_lt", | |
224 | "gt", | |
225 | "i_gt", | |
226 | "le", | |
227 | "i_le", | |
228 | "ge", | |
229 | "i_ge", | |
230 | "eq", | |
231 | "i_eq", | |
232 | "ne", | |
233 | "i_ne", | |
234 | "ncmp", | |
235 | "i_ncmp", | |
236 | "slt", | |
237 | "sgt", | |
238 | "sle", | |
239 | "sge", | |
240 | "seq", | |
241 | "sne", | |
242 | "scmp", | |
243 | "bit_and", | |
244 | "bit_xor", | |
245 | "bit_or", | |
246 | "negate", | |
247 | "i_negate", | |
248 | "not", | |
249 | "complement", | |
fdecdb95 | 250 | "smartmatch", |
c07a80fd | 251 | "atan2", |
252 | "sin", | |
253 | "cos", | |
254 | "rand", | |
255 | "srand", | |
256 | "exp", | |
257 | "log", | |
258 | "sqrt", | |
259 | "int", | |
260 | "hex", | |
261 | "oct", | |
262 | "abs", | |
263 | "length", | |
264 | "substr", | |
265 | "vec", | |
266 | "index", | |
267 | "rindex", | |
268 | "sprintf", | |
269 | "formline", | |
270 | "ord", | |
271 | "chr", | |
272 | "crypt", | |
273 | "ucfirst", | |
274 | "lcfirst", | |
275 | "uc", | |
276 | "lc", | |
277 | "quotemeta", | |
278 | "rv2av", | |
279 | "aelemfast", | |
bfa14884 | 280 | "aelemfast_lex", |
c07a80fd | 281 | "aelem", |
282 | "aslice", | |
6dd3e0f2 | 283 | "kvaslice", |
878d132a NC |
284 | "aeach", |
285 | "akeys", | |
286 | "avalues", | |
c07a80fd | 287 | "each", |
288 | "values", | |
289 | "keys", | |
290 | "delete", | |
291 | "exists", | |
292 | "rv2hv", | |
293 | "helem", | |
294 | "hslice", | |
5cae3edb | 295 | "kvhslice", |
c07a80fd | 296 | "unpack", |
297 | "pack", | |
298 | "split", | |
299 | "join", | |
300 | "list", | |
301 | "lslice", | |
302 | "anonlist", | |
303 | "anonhash", | |
304 | "splice", | |
305 | "push", | |
306 | "pop", | |
307 | "shift", | |
308 | "unshift", | |
309 | "sort", | |
310 | "reverse", | |
311 | "grepstart", | |
312 | "grepwhile", | |
313 | "mapstart", | |
314 | "mapwhile", | |
315 | "range", | |
316 | "flip", | |
317 | "flop", | |
318 | "and", | |
319 | "or", | |
320 | "xor", | |
fdecdb95 | 321 | "dor", |
c07a80fd | 322 | "cond_expr", |
323 | "andassign", | |
324 | "orassign", | |
fdecdb95 | 325 | "dorassign", |
c07a80fd | 326 | "method", |
327 | "entersub", | |
328 | "leavesub", | |
cd06dffe | 329 | "leavesublv", |
c07a80fd | 330 | "caller", |
331 | "warn", | |
332 | "die", | |
333 | "reset", | |
334 | "lineseq", | |
335 | "nextstate", | |
336 | "dbstate", | |
337 | "unstack", | |
338 | "enter", | |
339 | "leave", | |
340 | "scope", | |
341 | "enteriter", | |
342 | "iter", | |
343 | "enterloop", | |
344 | "leaveloop", | |
345 | "return", | |
346 | "last", | |
347 | "next", | |
348 | "redo", | |
349 | "dump", | |
350 | "goto", | |
351 | "exit", | |
fdecdb95 NC |
352 | "method_named", |
353 | "entergiven", | |
354 | "leavegiven", | |
355 | "enterwhen", | |
356 | "leavewhen", | |
357 | "break", | |
358 | "continue", | |
c07a80fd | 359 | "open", |
360 | "close", | |
361 | "pipe_op", | |
362 | "fileno", | |
363 | "umask", | |
364 | "binmode", | |
365 | "tie", | |
366 | "untie", | |
367 | "tied", | |
368 | "dbmopen", | |
369 | "dbmclose", | |
370 | "sselect", | |
371 | "select", | |
372 | "getc", | |
373 | "read", | |
374 | "enterwrite", | |
375 | "leavewrite", | |
376 | "prtf", | |
377 | "print", | |
fdecdb95 | 378 | "say", |
c07a80fd | 379 | "sysopen", |
137443ea | 380 | "sysseek", |
c07a80fd | 381 | "sysread", |
382 | "syswrite", | |
c07a80fd | 383 | "eof", |
384 | "tell", | |
385 | "seek", | |
386 | "truncate", | |
387 | "fcntl", | |
388 | "ioctl", | |
389 | "flock", | |
e71197e2 JC |
390 | "send", |
391 | "recv", | |
c07a80fd | 392 | "socket", |
393 | "sockpair", | |
394 | "bind", | |
395 | "connect", | |
396 | "listen", | |
397 | "accept", | |
398 | "shutdown", | |
399 | "gsockopt", | |
400 | "ssockopt", | |
401 | "getsockname", | |
402 | "getpeername", | |
403 | "lstat", | |
404 | "stat", | |
405 | "ftrread", | |
406 | "ftrwrite", | |
407 | "ftrexec", | |
408 | "fteread", | |
409 | "ftewrite", | |
410 | "fteexec", | |
411 | "ftis", | |
c07a80fd | 412 | "ftsize", |
413 | "ftmtime", | |
414 | "ftatime", | |
415 | "ftctime", | |
7834bb7e NC |
416 | "ftrowned", |
417 | "fteowned", | |
418 | "ftzero", | |
c07a80fd | 419 | "ftsock", |
420 | "ftchr", | |
421 | "ftblk", | |
422 | "ftfile", | |
423 | "ftdir", | |
424 | "ftpipe", | |
c07a80fd | 425 | "ftsuid", |
426 | "ftsgid", | |
427 | "ftsvtx", | |
7834bb7e | 428 | "ftlink", |
c07a80fd | 429 | "fttty", |
430 | "fttext", | |
431 | "ftbinary", | |
432 | "chdir", | |
433 | "chown", | |
434 | "chroot", | |
435 | "unlink", | |
436 | "chmod", | |
437 | "utime", | |
438 | "rename", | |
439 | "link", | |
440 | "symlink", | |
441 | "readlink", | |
442 | "mkdir", | |
443 | "rmdir", | |
444 | "open_dir", | |
445 | "readdir", | |
446 | "telldir", | |
447 | "seekdir", | |
448 | "rewinddir", | |
449 | "closedir", | |
450 | "fork", | |
451 | "wait", | |
452 | "waitpid", | |
453 | "system", | |
454 | "exec", | |
455 | "kill", | |
456 | "getppid", | |
457 | "getpgrp", | |
458 | "setpgrp", | |
459 | "getpriority", | |
460 | "setpriority", | |
461 | "time", | |
462 | "tms", | |
463 | "localtime", | |
464 | "gmtime", | |
465 | "alarm", | |
466 | "sleep", | |
467 | "shmget", | |
468 | "shmctl", | |
469 | "shmread", | |
470 | "shmwrite", | |
471 | "msgget", | |
472 | "msgctl", | |
473 | "msgsnd", | |
474 | "msgrcv", | |
7834bb7e | 475 | "semop", |
c07a80fd | 476 | "semget", |
477 | "semctl", | |
c07a80fd | 478 | "require", |
479 | "dofile", | |
996c9baa | 480 | "hintseval", |
c07a80fd | 481 | "entereval", |
482 | "leaveeval", | |
483 | "entertry", | |
484 | "leavetry", | |
485 | "ghbyname", | |
486 | "ghbyaddr", | |
487 | "ghostent", | |
488 | "gnbyname", | |
489 | "gnbyaddr", | |
490 | "gnetent", | |
491 | "gpbyname", | |
492 | "gpbynumber", | |
493 | "gprotoent", | |
494 | "gsbyname", | |
495 | "gsbyport", | |
496 | "gservent", | |
497 | "shostent", | |
498 | "snetent", | |
499 | "sprotoent", | |
500 | "sservent", | |
501 | "ehostent", | |
502 | "enetent", | |
503 | "eprotoent", | |
504 | "eservent", | |
505 | "gpwnam", | |
506 | "gpwuid", | |
507 | "gpwent", | |
508 | "spwent", | |
509 | "epwent", | |
510 | "ggrnam", | |
511 | "ggrgid", | |
512 | "ggrent", | |
513 | "sgrent", | |
514 | "egrent", | |
515 | "getlogin", | |
516 | "syscall", | |
c0329465 | 517 | "lock", |
c5917253 | 518 | "once", |
438c221d | 519 | "custom", |
cba5a3b0 DG |
520 | "reach", |
521 | "rkeys", | |
522 | "rvalues", | |
deb8a388 | 523 | "coreargs", |
84ed0108 | 524 | "runcv", |
838f2281 | 525 | "fc", |
ac217057 | 526 | "padcv", |
ecf9c8b7 | 527 | "introcv", |
13f89586 | 528 | "clonecv", |
a7fd8ef6 | 529 | "padrange", |
a33a81d0 | 530 | "freed", |
c07a80fd | 531 | }; |
532 | #endif | |
533 | ||
534 | #ifndef DOINIT | |
27da23d5 | 535 | EXTCONST char* const PL_op_desc[]; |
c07a80fd | 536 | #else |
27da23d5 | 537 | EXTCONST char* const PL_op_desc[] = { |
79072805 | 538 | "null operation", |
93a17b20 LW |
539 | "stub", |
540 | "scalar", | |
79072805 LW |
541 | "pushmark", |
542 | "wantarray", | |
79072805 | 543 | "constant item", |
79072805 LW |
544 | "scalar variable", |
545 | "glob value", | |
c07a80fd | 546 | "glob elem", |
93a17b20 LW |
547 | "private variable", |
548 | "private array", | |
549 | "private hash", | |
f1612b5c | 550 | "private value", |
79072805 LW |
551 | "push regexp", |
552 | "ref-to-glob cast", | |
b89fed5f | 553 | "scalar dereference", |
79072805 | 554 | "array length", |
b89fed5f | 555 | "subroutine dereference", |
a0d0e21e | 556 | "anonymous subroutine", |
c07a80fd | 557 | "subroutine prototype", |
8990e307 | 558 | "reference constructor", |
dfa0f641 | 559 | "single ref constructor", |
79072805 LW |
560 | "reference-type operator", |
561 | "bless", | |
b3f4d674 | 562 | "quoted execution (``, qx)", |
79072805 LW |
563 | "glob", |
564 | "<HANDLE>", | |
565 | "append I/O operator", | |
f1612b5c GS |
566 | "regexp internal guard", |
567 | "regexp internal reset", | |
79072805 | 568 | "regexp compilation", |
42d38218 MS |
569 | "pattern match (m//)", |
570 | "pattern quote (qr//)", | |
571 | "substitution (s///)", | |
f1612b5c GS |
572 | "substitution iterator", |
573 | "transliteration (tr///)", | |
bfa14884 | 574 | "transliteration (tr///)", |
79072805 LW |
575 | "scalar assignment", |
576 | "list assignment", | |
79072805 | 577 | "chop", |
a0d0e21e | 578 | "scalar chop", |
f1612b5c GS |
579 | "chomp", |
580 | "scalar chomp", | |
79072805 LW |
581 | "defined operator", |
582 | "undef operator", | |
583 | "study", | |
a0d0e21e | 584 | "match position", |
42d38218 MS |
585 | "preincrement (++)", |
586 | "integer preincrement (++)", | |
587 | "predecrement (--)", | |
588 | "integer predecrement (--)", | |
589 | "postincrement (++)", | |
590 | "integer postincrement (++)", | |
591 | "postdecrement (--)", | |
592 | "integer postdecrement (--)", | |
593 | "exponentiation (**)", | |
594 | "multiplication (*)", | |
595 | "integer multiplication (*)", | |
596 | "division (/)", | |
597 | "integer division (/)", | |
598 | "modulus (%)", | |
599 | "integer modulus (%)", | |
600 | "repeat (x)", | |
601 | "addition (+)", | |
602 | "integer addition (+)", | |
603 | "subtraction (-)", | |
604 | "integer subtraction (-)", | |
297b36dc | 605 | "concatenation (.) or string", |
a0d0e21e | 606 | "string", |
42d38218 MS |
607 | "left bitshift (<<)", |
608 | "right bitshift (>>)", | |
609 | "numeric lt (<)", | |
610 | "integer lt (<)", | |
611 | "numeric gt (>)", | |
612 | "integer gt (>)", | |
613 | "numeric le (<=)", | |
614 | "integer le (<=)", | |
615 | "numeric ge (>=)", | |
616 | "integer ge (>=)", | |
617 | "numeric eq (==)", | |
618 | "integer eq (==)", | |
619 | "numeric ne (!=)", | |
620 | "integer ne (!=)", | |
621 | "numeric comparison (<=>)", | |
622 | "integer comparison (<=>)", | |
79072805 LW |
623 | "string lt", |
624 | "string gt", | |
625 | "string le", | |
626 | "string ge", | |
627 | "string eq", | |
628 | "string ne", | |
42d38218 MS |
629 | "string comparison (cmp)", |
630 | "bitwise and (&)", | |
631 | "bitwise xor (^)", | |
632 | "bitwise or (|)", | |
f1612b5c GS |
633 | "negation (-)", |
634 | "integer negation (-)", | |
79072805 | 635 | "not", |
42d38218 | 636 | "1's complement (~)", |
fdecdb95 | 637 | "smart match", |
79072805 LW |
638 | "atan2", |
639 | "sin", | |
640 | "cos", | |
641 | "rand", | |
642 | "srand", | |
643 | "exp", | |
644 | "log", | |
645 | "sqrt", | |
646 | "int", | |
647 | "hex", | |
648 | "oct", | |
463ee0b2 | 649 | "abs", |
79072805 LW |
650 | "length", |
651 | "substr", | |
652 | "vec", | |
653 | "index", | |
654 | "rindex", | |
655 | "sprintf", | |
656 | "formline", | |
657 | "ord", | |
463ee0b2 | 658 | "chr", |
79072805 | 659 | "crypt", |
42d38218 MS |
660 | "ucfirst", |
661 | "lcfirst", | |
662 | "uc", | |
663 | "lc", | |
664 | "quotemeta", | |
f1612b5c GS |
665 | "array dereference", |
666 | "constant array element", | |
bfa14884 | 667 | "constant lexical array element", |
79072805 LW |
668 | "array element", |
669 | "array slice", | |
6dd3e0f2 | 670 | "index/value array slice", |
878d132a NC |
671 | "each on array", |
672 | "keys on array", | |
673 | "values on array", | |
79072805 LW |
674 | "each", |
675 | "values", | |
676 | "keys", | |
677 | "delete", | |
42d38218 | 678 | "exists", |
f1612b5c GS |
679 | "hash dereference", |
680 | "hash element", | |
aa689395 | 681 | "hash slice", |
5cae3edb | 682 | "key/value hash slice", |
79072805 LW |
683 | "unpack", |
684 | "pack", | |
685 | "split", | |
297b36dc | 686 | "join or string", |
79072805 LW |
687 | "list", |
688 | "list slice", | |
42d38218 MS |
689 | "anonymous list ([])", |
690 | "anonymous hash ({})", | |
79072805 LW |
691 | "splice", |
692 | "push", | |
693 | "pop", | |
694 | "shift", | |
695 | "unshift", | |
696 | "sort", | |
697 | "reverse", | |
698 | "grep", | |
699 | "grep iterator", | |
a0d0e21e LW |
700 | "map", |
701 | "map iterator", | |
79072805 LW |
702 | "flipflop", |
703 | "range (or flip)", | |
704 | "range (or flop)", | |
42d38218 MS |
705 | "logical and (&&)", |
706 | "logical or (||)", | |
a0d0e21e | 707 | "logical xor", |
fdecdb95 | 708 | "defined or (//)", |
f1612b5c | 709 | "conditional expression", |
42d38218 MS |
710 | "logical and assignment (&&=)", |
711 | "logical or assignment (||=)", | |
fdecdb95 | 712 | "defined or assignment (//=)", |
79072805 LW |
713 | "method lookup", |
714 | "subroutine entry", | |
715 | "subroutine exit", | |
78f9721b | 716 | "lvalue subroutine return", |
79072805 LW |
717 | "caller", |
718 | "warn", | |
719 | "die", | |
f1612b5c | 720 | "symbol reset", |
79072805 LW |
721 | "line sequence", |
722 | "next statement", | |
93a17b20 | 723 | "debug next statement", |
e9c54c90 | 724 | "iteration finalizer", |
79072805 LW |
725 | "block entry", |
726 | "block exit", | |
463ee0b2 | 727 | "block", |
79072805 LW |
728 | "foreach loop entry", |
729 | "foreach loop iterator", | |
730 | "loop entry", | |
731 | "loop exit", | |
732 | "return", | |
733 | "last", | |
734 | "next", | |
735 | "redo", | |
736 | "dump", | |
737 | "goto", | |
738 | "exit", | |
fdecdb95 NC |
739 | "method with known name", |
740 | "given()", | |
741 | "leave given block", | |
742 | "when()", | |
743 | "leave when block", | |
744 | "break", | |
745 | "continue", | |
79072805 LW |
746 | "open", |
747 | "close", | |
748 | "pipe", | |
749 | "fileno", | |
750 | "umask", | |
751 | "binmode", | |
463ee0b2 LW |
752 | "tie", |
753 | "untie", | |
c07a80fd | 754 | "tied", |
79072805 LW |
755 | "dbmopen", |
756 | "dbmclose", | |
757 | "select system call", | |
758 | "select", | |
759 | "getc", | |
760 | "read", | |
761 | "write", | |
762 | "write exit", | |
463ee0b2 | 763 | "printf", |
79072805 | 764 | "print", |
fdecdb95 | 765 | "say", |
c07a80fd | 766 | "sysopen", |
137443ea | 767 | "sysseek", |
79072805 LW |
768 | "sysread", |
769 | "syswrite", | |
79072805 LW |
770 | "eof", |
771 | "tell", | |
772 | "seek", | |
773 | "truncate", | |
774 | "fcntl", | |
775 | "ioctl", | |
776 | "flock", | |
e71197e2 JC |
777 | "send", |
778 | "recv", | |
79072805 LW |
779 | "socket", |
780 | "socketpair", | |
781 | "bind", | |
782 | "connect", | |
783 | "listen", | |
784 | "accept", | |
785 | "shutdown", | |
786 | "getsockopt", | |
787 | "setsockopt", | |
788 | "getsockname", | |
789 | "getpeername", | |
790 | "lstat", | |
791 | "stat", | |
792 | "-R", | |
793 | "-W", | |
794 | "-X", | |
795 | "-r", | |
796 | "-w", | |
797 | "-x", | |
798 | "-e", | |
79072805 LW |
799 | "-s", |
800 | "-M", | |
801 | "-A", | |
802 | "-C", | |
7834bb7e NC |
803 | "-O", |
804 | "-o", | |
805 | "-z", | |
79072805 LW |
806 | "-S", |
807 | "-c", | |
808 | "-b", | |
809 | "-f", | |
810 | "-d", | |
811 | "-p", | |
79072805 LW |
812 | "-u", |
813 | "-g", | |
814 | "-k", | |
7834bb7e | 815 | "-l", |
79072805 LW |
816 | "-t", |
817 | "-T", | |
818 | "-B", | |
819 | "chdir", | |
820 | "chown", | |
821 | "chroot", | |
822 | "unlink", | |
823 | "chmod", | |
824 | "utime", | |
825 | "rename", | |
826 | "link", | |
827 | "symlink", | |
828 | "readlink", | |
829 | "mkdir", | |
830 | "rmdir", | |
831 | "opendir", | |
832 | "readdir", | |
833 | "telldir", | |
834 | "seekdir", | |
835 | "rewinddir", | |
836 | "closedir", | |
837 | "fork", | |
838 | "wait", | |
839 | "waitpid", | |
840 | "system", | |
841 | "exec", | |
842 | "kill", | |
843 | "getppid", | |
844 | "getpgrp", | |
845 | "setpgrp", | |
846 | "getpriority", | |
847 | "setpriority", | |
848 | "time", | |
849 | "times", | |
850 | "localtime", | |
851 | "gmtime", | |
852 | "alarm", | |
853 | "sleep", | |
854 | "shmget", | |
855 | "shmctl", | |
856 | "shmread", | |
857 | "shmwrite", | |
858 | "msgget", | |
859 | "msgctl", | |
860 | "msgsnd", | |
861 | "msgrcv", | |
7834bb7e | 862 | "semop", |
79072805 LW |
863 | "semget", |
864 | "semctl", | |
79072805 | 865 | "require", |
b3f4d674 | 866 | "do \"file\"", |
996c9baa | 867 | "eval hints", |
b3f4d674 GS |
868 | "eval \"string\"", |
869 | "eval \"string\" exit", | |
42d38218 | 870 | "eval {block}", |
f1612b5c | 871 | "eval {block} exit", |
79072805 LW |
872 | "gethostbyname", |
873 | "gethostbyaddr", | |
874 | "gethostent", | |
875 | "getnetbyname", | |
876 | "getnetbyaddr", | |
877 | "getnetent", | |
878 | "getprotobyname", | |
879 | "getprotobynumber", | |
880 | "getprotoent", | |
881 | "getservbyname", | |
882 | "getservbyport", | |
883 | "getservent", | |
884 | "sethostent", | |
885 | "setnetent", | |
886 | "setprotoent", | |
887 | "setservent", | |
888 | "endhostent", | |
889 | "endnetent", | |
890 | "endprotoent", | |
891 | "endservent", | |
892 | "getpwnam", | |
893 | "getpwuid", | |
894 | "getpwent", | |
895 | "setpwent", | |
896 | "endpwent", | |
897 | "getgrnam", | |
898 | "getgrgid", | |
899 | "getgrent", | |
900 | "setgrent", | |
901 | "endgrent", | |
902 | "getlogin", | |
903 | "syscall", | |
c0329465 | 904 | "lock", |
c5917253 | 905 | "once", |
438c221d | 906 | "unknown custom operator", |
cba5a3b0 DG |
907 | "each on reference", |
908 | "keys on reference", | |
909 | "values on reference", | |
deb8a388 | 910 | "CORE:: subroutine", |
84ed0108 | 911 | "__SUB__", |
838f2281 | 912 | "fc", |
ac217057 | 913 | "private subroutine", |
ecf9c8b7 | 914 | "private subroutine", |
13f89586 | 915 | "private subroutine", |
a7fd8ef6 | 916 | "list of private variables", |
a33a81d0 | 917 | "freed op", |
79072805 LW |
918 | }; |
919 | #endif | |
920 | ||
73c4f7a1 GS |
921 | END_EXTERN_C |
922 | ||
27da23d5 JH |
923 | #endif /* !PERL_GLOBAL_STRUCT_INIT */ |
924 | ||
73c4f7a1 GS |
925 | START_EXTERN_C |
926 | ||
27da23d5 | 927 | #ifdef PERL_GLOBAL_STRUCT_INIT |
97aff369 | 928 | # define PERL_PPADDR_INITED |
27da23d5 | 929 | static const Perl_ppaddr_t Gppaddr[] |
79072805 | 930 | #else |
27da23d5 | 931 | # ifndef PERL_GLOBAL_STRUCT |
97aff369 | 932 | # define PERL_PPADDR_INITED |
27da23d5 JH |
933 | EXT Perl_ppaddr_t PL_ppaddr[] /* or perlvars.h */ |
934 | # endif | |
935 | #endif /* PERL_GLOBAL_STRUCT */ | |
936 | #if (defined(DOINIT) && !defined(PERL_GLOBAL_STRUCT)) || defined(PERL_GLOBAL_STRUCT_INIT) | |
97aff369 | 937 | # define PERL_PPADDR_INITED |
27da23d5 | 938 | = { |
ef69c8fc BM |
939 | Perl_pp_null, |
940 | Perl_pp_stub, | |
6f3ed336 | 941 | Perl_pp_scalar, /* implemented by Perl_pp_null */ |
ef69c8fc BM |
942 | Perl_pp_pushmark, |
943 | Perl_pp_wantarray, | |
944 | Perl_pp_const, | |
945 | Perl_pp_gvsv, | |
946 | Perl_pp_gv, | |
947 | Perl_pp_gelem, | |
948 | Perl_pp_padsv, | |
949 | Perl_pp_padav, | |
950 | Perl_pp_padhv, | |
6f3ed336 | 951 | Perl_pp_padany, /* implemented by Perl_unimplemented_op */ |
ef69c8fc BM |
952 | Perl_pp_pushre, |
953 | Perl_pp_rv2gv, | |
954 | Perl_pp_rv2sv, | |
955 | Perl_pp_av2arylen, | |
956 | Perl_pp_rv2cv, | |
957 | Perl_pp_anoncode, | |
958 | Perl_pp_prototype, | |
959 | Perl_pp_refgen, | |
960 | Perl_pp_srefgen, | |
961 | Perl_pp_ref, | |
962 | Perl_pp_bless, | |
963 | Perl_pp_backtick, | |
964 | Perl_pp_glob, | |
965 | Perl_pp_readline, | |
966 | Perl_pp_rcatline, | |
6f3ed336 | 967 | Perl_pp_regcmaybe, /* implemented by Perl_pp_null */ |
ef69c8fc BM |
968 | Perl_pp_regcreset, |
969 | Perl_pp_regcomp, | |
970 | Perl_pp_match, | |
971 | Perl_pp_qr, | |
972 | Perl_pp_subst, | |
973 | Perl_pp_substcont, | |
9561d06f | 974 | Perl_pp_trans, |
bfa14884 | 975 | Perl_pp_transr, /* implemented by Perl_pp_trans */ |
ef69c8fc BM |
976 | Perl_pp_sassign, |
977 | Perl_pp_aassign, | |
9561d06f NC |
978 | Perl_pp_chop, |
979 | Perl_pp_schop, | |
6f3ed336 NC |
980 | Perl_pp_chomp, /* implemented by Perl_pp_chop */ |
981 | Perl_pp_schomp, /* implemented by Perl_pp_schop */ | |
ef69c8fc BM |
982 | Perl_pp_defined, |
983 | Perl_pp_undef, | |
984 | Perl_pp_study, | |
985 | Perl_pp_pos, | |
986 | Perl_pp_preinc, | |
6f3ed336 | 987 | Perl_pp_i_preinc, /* implemented by Perl_pp_preinc */ |
17058fe0 FC |
988 | Perl_pp_predec, /* implemented by Perl_pp_preinc */ |
989 | Perl_pp_i_predec, /* implemented by Perl_pp_preinc */ | |
ef69c8fc | 990 | Perl_pp_postinc, |
6f3ed336 | 991 | Perl_pp_i_postinc, /* implemented by Perl_pp_postinc */ |
c22c99bc FC |
992 | Perl_pp_postdec, /* implemented by Perl_pp_postinc */ |
993 | Perl_pp_i_postdec, /* implemented by Perl_pp_postinc */ | |
ef69c8fc BM |
994 | Perl_pp_pow, |
995 | Perl_pp_multiply, | |
996 | Perl_pp_i_multiply, | |
997 | Perl_pp_divide, | |
998 | Perl_pp_i_divide, | |
999 | Perl_pp_modulo, | |
1000 | Perl_pp_i_modulo, | |
1001 | Perl_pp_repeat, | |
1002 | Perl_pp_add, | |
1003 | Perl_pp_i_add, | |
1004 | Perl_pp_subtract, | |
1005 | Perl_pp_i_subtract, | |
1006 | Perl_pp_concat, | |
1007 | Perl_pp_stringify, | |
1008 | Perl_pp_left_shift, | |
1009 | Perl_pp_right_shift, | |
1010 | Perl_pp_lt, | |
1011 | Perl_pp_i_lt, | |
1012 | Perl_pp_gt, | |
1013 | Perl_pp_i_gt, | |
1014 | Perl_pp_le, | |
1015 | Perl_pp_i_le, | |
1016 | Perl_pp_ge, | |
1017 | Perl_pp_i_ge, | |
1018 | Perl_pp_eq, | |
1019 | Perl_pp_i_eq, | |
1020 | Perl_pp_ne, | |
1021 | Perl_pp_i_ne, | |
1022 | Perl_pp_ncmp, | |
1023 | Perl_pp_i_ncmp, | |
6f3ed336 NC |
1024 | Perl_pp_slt, /* implemented by Perl_pp_sle */ |
1025 | Perl_pp_sgt, /* implemented by Perl_pp_sle */ | |
ef69c8fc | 1026 | Perl_pp_sle, |
6f3ed336 | 1027 | Perl_pp_sge, /* implemented by Perl_pp_sle */ |
ef69c8fc BM |
1028 | Perl_pp_seq, |
1029 | Perl_pp_sne, | |
1030 | Perl_pp_scmp, | |
1031 | Perl_pp_bit_and, | |
6f3ed336 | 1032 | Perl_pp_bit_xor, /* implemented by Perl_pp_bit_or */ |
ef69c8fc BM |
1033 | Perl_pp_bit_or, |
1034 | Perl_pp_negate, | |
1035 | Perl_pp_i_negate, | |
1036 | Perl_pp_not, | |
1037 | Perl_pp_complement, | |
1038 | Perl_pp_smartmatch, | |
1039 | Perl_pp_atan2, | |
1040 | Perl_pp_sin, | |
6f3ed336 | 1041 | Perl_pp_cos, /* implemented by Perl_pp_sin */ |
ef69c8fc BM |
1042 | Perl_pp_rand, |
1043 | Perl_pp_srand, | |
6f3ed336 NC |
1044 | Perl_pp_exp, /* implemented by Perl_pp_sin */ |
1045 | Perl_pp_log, /* implemented by Perl_pp_sin */ | |
1046 | Perl_pp_sqrt, /* implemented by Perl_pp_sin */ | |
ef69c8fc | 1047 | Perl_pp_int, |
6f3ed336 | 1048 | Perl_pp_hex, /* implemented by Perl_pp_oct */ |
ef69c8fc BM |
1049 | Perl_pp_oct, |
1050 | Perl_pp_abs, | |
1051 | Perl_pp_length, | |
1052 | Perl_pp_substr, | |
1053 | Perl_pp_vec, | |
1054 | Perl_pp_index, | |
6f3ed336 | 1055 | Perl_pp_rindex, /* implemented by Perl_pp_index */ |
ef69c8fc BM |
1056 | Perl_pp_sprintf, |
1057 | Perl_pp_formline, | |
1058 | Perl_pp_ord, | |
1059 | Perl_pp_chr, | |
1060 | Perl_pp_crypt, | |
1061 | Perl_pp_ucfirst, | |
6f3ed336 | 1062 | Perl_pp_lcfirst, /* implemented by Perl_pp_ucfirst */ |
ef69c8fc BM |
1063 | Perl_pp_uc, |
1064 | Perl_pp_lc, | |
1065 | Perl_pp_quotemeta, | |
1066 | Perl_pp_rv2av, | |
1067 | Perl_pp_aelemfast, | |
bfa14884 | 1068 | Perl_pp_aelemfast_lex, /* implemented by Perl_pp_aelemfast */ |
ef69c8fc BM |
1069 | Perl_pp_aelem, |
1070 | Perl_pp_aslice, | |
6dd3e0f2 | 1071 | Perl_pp_kvaslice, |
ef69c8fc BM |
1072 | Perl_pp_aeach, |
1073 | Perl_pp_akeys, | |
6f3ed336 | 1074 | Perl_pp_avalues, /* implemented by Perl_pp_akeys */ |
ef69c8fc | 1075 | Perl_pp_each, |
6f3ed336 NC |
1076 | Perl_pp_values, /* implemented by Perl_do_kv */ |
1077 | Perl_pp_keys, /* implemented by Perl_do_kv */ | |
ef69c8fc BM |
1078 | Perl_pp_delete, |
1079 | Perl_pp_exists, | |
6f3ed336 | 1080 | Perl_pp_rv2hv, /* implemented by Perl_pp_rv2av */ |
ef69c8fc BM |
1081 | Perl_pp_helem, |
1082 | Perl_pp_hslice, | |
5cae3edb | 1083 | Perl_pp_kvhslice, |
ef69c8fc BM |
1084 | Perl_pp_unpack, |
1085 | Perl_pp_pack, | |
1086 | Perl_pp_split, | |
1087 | Perl_pp_join, | |
1088 | Perl_pp_list, | |
1089 | Perl_pp_lslice, | |
1090 | Perl_pp_anonlist, | |
1091 | Perl_pp_anonhash, | |
1092 | Perl_pp_splice, | |
1093 | Perl_pp_push, | |
6f3ed336 | 1094 | Perl_pp_pop, /* implemented by Perl_pp_shift */ |
ef69c8fc BM |
1095 | Perl_pp_shift, |
1096 | Perl_pp_unshift, | |
1097 | Perl_pp_sort, | |
1098 | Perl_pp_reverse, | |
1099 | Perl_pp_grepstart, | |
1100 | Perl_pp_grepwhile, | |
6f3ed336 | 1101 | Perl_pp_mapstart, /* implemented by Perl_unimplemented_op */ |
ef69c8fc BM |
1102 | Perl_pp_mapwhile, |
1103 | Perl_pp_range, | |
1104 | Perl_pp_flip, | |
1105 | Perl_pp_flop, | |
1106 | Perl_pp_and, | |
1107 | Perl_pp_or, | |
1108 | Perl_pp_xor, | |
6f3ed336 | 1109 | Perl_pp_dor, /* implemented by Perl_pp_defined */ |
ef69c8fc | 1110 | Perl_pp_cond_expr, |
6f3ed336 NC |
1111 | Perl_pp_andassign, /* implemented by Perl_pp_and */ |
1112 | Perl_pp_orassign, /* implemented by Perl_pp_or */ | |
1113 | Perl_pp_dorassign, /* implemented by Perl_pp_defined */ | |
ef69c8fc BM |
1114 | Perl_pp_method, |
1115 | Perl_pp_entersub, | |
1116 | Perl_pp_leavesub, | |
1117 | Perl_pp_leavesublv, | |
1118 | Perl_pp_caller, | |
1119 | Perl_pp_warn, | |
1120 | Perl_pp_die, | |
1121 | Perl_pp_reset, | |
6f3ed336 | 1122 | Perl_pp_lineseq, /* implemented by Perl_pp_null */ |
ef69c8fc BM |
1123 | Perl_pp_nextstate, |
1124 | Perl_pp_dbstate, | |
1125 | Perl_pp_unstack, | |
1126 | Perl_pp_enter, | |
1127 | Perl_pp_leave, | |
6f3ed336 | 1128 | Perl_pp_scope, /* implemented by Perl_pp_null */ |
ef69c8fc BM |
1129 | Perl_pp_enteriter, |
1130 | Perl_pp_iter, | |
1131 | Perl_pp_enterloop, | |
1132 | Perl_pp_leaveloop, | |
1133 | Perl_pp_return, | |
1134 | Perl_pp_last, | |
1135 | Perl_pp_next, | |
1136 | Perl_pp_redo, | |
6f3ed336 | 1137 | Perl_pp_dump, /* implemented by Perl_pp_goto */ |
ef69c8fc BM |
1138 | Perl_pp_goto, |
1139 | Perl_pp_exit, | |
1140 | Perl_pp_method_named, | |
1141 | Perl_pp_entergiven, | |
1142 | Perl_pp_leavegiven, | |
1143 | Perl_pp_enterwhen, | |
1144 | Perl_pp_leavewhen, | |
1145 | Perl_pp_break, | |
1146 | Perl_pp_continue, | |
1147 | Perl_pp_open, | |
1148 | Perl_pp_close, | |
1149 | Perl_pp_pipe_op, | |
1150 | Perl_pp_fileno, | |
1151 | Perl_pp_umask, | |
1152 | Perl_pp_binmode, | |
1153 | Perl_pp_tie, | |
1154 | Perl_pp_untie, | |
1155 | Perl_pp_tied, | |
1156 | Perl_pp_dbmopen, | |
6f3ed336 | 1157 | Perl_pp_dbmclose, /* implemented by Perl_pp_untie */ |
ef69c8fc BM |
1158 | Perl_pp_sselect, |
1159 | Perl_pp_select, | |
1160 | Perl_pp_getc, | |
6f3ed336 | 1161 | Perl_pp_read, /* implemented by Perl_pp_sysread */ |
ef69c8fc BM |
1162 | Perl_pp_enterwrite, |
1163 | Perl_pp_leavewrite, | |
1164 | Perl_pp_prtf, | |
1165 | Perl_pp_print, | |
6f3ed336 | 1166 | Perl_pp_say, /* implemented by Perl_pp_print */ |
ef69c8fc BM |
1167 | Perl_pp_sysopen, |
1168 | Perl_pp_sysseek, | |
1169 | Perl_pp_sysread, | |
60504e18 | 1170 | Perl_pp_syswrite, |
ef69c8fc BM |
1171 | Perl_pp_eof, |
1172 | Perl_pp_tell, | |
6f3ed336 | 1173 | Perl_pp_seek, /* implemented by Perl_pp_sysseek */ |
ef69c8fc | 1174 | Perl_pp_truncate, |
6f3ed336 | 1175 | Perl_pp_fcntl, /* implemented by Perl_pp_ioctl */ |
ef69c8fc BM |
1176 | Perl_pp_ioctl, |
1177 | Perl_pp_flock, | |
60504e18 | 1178 | Perl_pp_send, /* implemented by Perl_pp_syswrite */ |
6f3ed336 | 1179 | Perl_pp_recv, /* implemented by Perl_pp_sysread */ |
ef69c8fc BM |
1180 | Perl_pp_socket, |
1181 | Perl_pp_sockpair, | |
1182 | Perl_pp_bind, | |
6f3ed336 | 1183 | Perl_pp_connect, /* implemented by Perl_pp_bind */ |
ef69c8fc BM |
1184 | Perl_pp_listen, |
1185 | Perl_pp_accept, | |
1186 | Perl_pp_shutdown, | |
6f3ed336 | 1187 | Perl_pp_gsockopt, /* implemented by Perl_pp_ssockopt */ |
ef69c8fc | 1188 | Perl_pp_ssockopt, |
6f3ed336 | 1189 | Perl_pp_getsockname, /* implemented by Perl_pp_getpeername */ |
ef69c8fc | 1190 | Perl_pp_getpeername, |
6f3ed336 | 1191 | Perl_pp_lstat, /* implemented by Perl_pp_stat */ |
ef69c8fc BM |
1192 | Perl_pp_stat, |
1193 | Perl_pp_ftrread, | |
6f3ed336 NC |
1194 | Perl_pp_ftrwrite, /* implemented by Perl_pp_ftrread */ |
1195 | Perl_pp_ftrexec, /* implemented by Perl_pp_ftrread */ | |
1196 | Perl_pp_fteread, /* implemented by Perl_pp_ftrread */ | |
1197 | Perl_pp_ftewrite, /* implemented by Perl_pp_ftrread */ | |
1198 | Perl_pp_fteexec, /* implemented by Perl_pp_ftrread */ | |
ef69c8fc | 1199 | Perl_pp_ftis, |
6f3ed336 NC |
1200 | Perl_pp_ftsize, /* implemented by Perl_pp_ftis */ |
1201 | Perl_pp_ftmtime, /* implemented by Perl_pp_ftis */ | |
1202 | Perl_pp_ftatime, /* implemented by Perl_pp_ftis */ | |
1203 | Perl_pp_ftctime, /* implemented by Perl_pp_ftis */ | |
ef69c8fc | 1204 | Perl_pp_ftrowned, |
6f3ed336 NC |
1205 | Perl_pp_fteowned, /* implemented by Perl_pp_ftrowned */ |
1206 | Perl_pp_ftzero, /* implemented by Perl_pp_ftrowned */ | |
1207 | Perl_pp_ftsock, /* implemented by Perl_pp_ftrowned */ | |
1208 | Perl_pp_ftchr, /* implemented by Perl_pp_ftrowned */ | |
1209 | Perl_pp_ftblk, /* implemented by Perl_pp_ftrowned */ | |
1210 | Perl_pp_ftfile, /* implemented by Perl_pp_ftrowned */ | |
1211 | Perl_pp_ftdir, /* implemented by Perl_pp_ftrowned */ | |
1212 | Perl_pp_ftpipe, /* implemented by Perl_pp_ftrowned */ | |
1213 | Perl_pp_ftsuid, /* implemented by Perl_pp_ftrowned */ | |
1214 | Perl_pp_ftsgid, /* implemented by Perl_pp_ftrowned */ | |
1215 | Perl_pp_ftsvtx, /* implemented by Perl_pp_ftrowned */ | |
ef69c8fc BM |
1216 | Perl_pp_ftlink, |
1217 | Perl_pp_fttty, | |
1218 | Perl_pp_fttext, | |
6f3ed336 | 1219 | Perl_pp_ftbinary, /* implemented by Perl_pp_fttext */ |
ef69c8fc BM |
1220 | Perl_pp_chdir, |
1221 | Perl_pp_chown, | |
1222 | Perl_pp_chroot, | |
6f3ed336 NC |
1223 | Perl_pp_unlink, /* implemented by Perl_pp_chown */ |
1224 | Perl_pp_chmod, /* implemented by Perl_pp_chown */ | |
1225 | Perl_pp_utime, /* implemented by Perl_pp_chown */ | |
ef69c8fc BM |
1226 | Perl_pp_rename, |
1227 | Perl_pp_link, | |
6f3ed336 | 1228 | Perl_pp_symlink, /* implemented by Perl_pp_link */ |
ef69c8fc BM |
1229 | Perl_pp_readlink, |
1230 | Perl_pp_mkdir, | |
1231 | Perl_pp_rmdir, | |
1232 | Perl_pp_open_dir, | |
1233 | Perl_pp_readdir, | |
1234 | Perl_pp_telldir, | |
1235 | Perl_pp_seekdir, | |
1236 | Perl_pp_rewinddir, | |
1237 | Perl_pp_closedir, | |
1238 | Perl_pp_fork, | |
1239 | Perl_pp_wait, | |
1240 | Perl_pp_waitpid, | |
1241 | Perl_pp_system, | |
1242 | Perl_pp_exec, | |
6f3ed336 | 1243 | Perl_pp_kill, /* implemented by Perl_pp_chown */ |
ef69c8fc BM |
1244 | Perl_pp_getppid, |
1245 | Perl_pp_getpgrp, | |
1246 | Perl_pp_setpgrp, | |
1247 | Perl_pp_getpriority, | |
1248 | Perl_pp_setpriority, | |
1249 | Perl_pp_time, | |
1250 | Perl_pp_tms, | |
6f3ed336 | 1251 | Perl_pp_localtime, /* implemented by Perl_pp_gmtime */ |
ef69c8fc BM |
1252 | Perl_pp_gmtime, |
1253 | Perl_pp_alarm, | |
1254 | Perl_pp_sleep, | |
6f3ed336 NC |
1255 | Perl_pp_shmget, /* implemented by Perl_pp_semget */ |
1256 | Perl_pp_shmctl, /* implemented by Perl_pp_semctl */ | |
1257 | Perl_pp_shmread, /* implemented by Perl_pp_shmwrite */ | |
ef69c8fc | 1258 | Perl_pp_shmwrite, |
6f3ed336 NC |
1259 | Perl_pp_msgget, /* implemented by Perl_pp_semget */ |
1260 | Perl_pp_msgctl, /* implemented by Perl_pp_semctl */ | |
1261 | Perl_pp_msgsnd, /* implemented by Perl_pp_shmwrite */ | |
1262 | Perl_pp_msgrcv, /* implemented by Perl_pp_shmwrite */ | |
1263 | Perl_pp_semop, /* implemented by Perl_pp_shmwrite */ | |
ef69c8fc BM |
1264 | Perl_pp_semget, |
1265 | Perl_pp_semctl, | |
1266 | Perl_pp_require, | |
6f3ed336 | 1267 | Perl_pp_dofile, /* implemented by Perl_pp_require */ |
ef69c8fc BM |
1268 | Perl_pp_hintseval, |
1269 | Perl_pp_entereval, | |
1270 | Perl_pp_leaveeval, | |
1271 | Perl_pp_entertry, | |
1272 | Perl_pp_leavetry, | |
6f3ed336 NC |
1273 | Perl_pp_ghbyname, /* implemented by Perl_pp_ghostent */ |
1274 | Perl_pp_ghbyaddr, /* implemented by Perl_pp_ghostent */ | |
ef69c8fc | 1275 | Perl_pp_ghostent, |
6f3ed336 NC |
1276 | Perl_pp_gnbyname, /* implemented by Perl_pp_gnetent */ |
1277 | Perl_pp_gnbyaddr, /* implemented by Perl_pp_gnetent */ | |
ef69c8fc | 1278 | Perl_pp_gnetent, |
6f3ed336 NC |
1279 | Perl_pp_gpbyname, /* implemented by Perl_pp_gprotoent */ |
1280 | Perl_pp_gpbynumber, /* implemented by Perl_pp_gprotoent */ | |
ef69c8fc | 1281 | Perl_pp_gprotoent, |
6f3ed336 NC |
1282 | Perl_pp_gsbyname, /* implemented by Perl_pp_gservent */ |
1283 | Perl_pp_gsbyport, /* implemented by Perl_pp_gservent */ | |
ef69c8fc BM |
1284 | Perl_pp_gservent, |
1285 | Perl_pp_shostent, | |
396166e1 NC |
1286 | Perl_pp_snetent, /* implemented by Perl_pp_shostent */ |
1287 | Perl_pp_sprotoent, /* implemented by Perl_pp_shostent */ | |
1288 | Perl_pp_sservent, /* implemented by Perl_pp_shostent */ | |
ef69c8fc | 1289 | Perl_pp_ehostent, |
d8ef1fcd NC |
1290 | Perl_pp_enetent, /* implemented by Perl_pp_ehostent */ |
1291 | Perl_pp_eprotoent, /* implemented by Perl_pp_ehostent */ | |
1292 | Perl_pp_eservent, /* implemented by Perl_pp_ehostent */ | |
6f3ed336 NC |
1293 | Perl_pp_gpwnam, /* implemented by Perl_pp_gpwent */ |
1294 | Perl_pp_gpwuid, /* implemented by Perl_pp_gpwent */ | |
ef69c8fc | 1295 | Perl_pp_gpwent, |
720d5dbf NC |
1296 | Perl_pp_spwent, /* implemented by Perl_pp_ehostent */ |
1297 | Perl_pp_epwent, /* implemented by Perl_pp_ehostent */ | |
6f3ed336 NC |
1298 | Perl_pp_ggrnam, /* implemented by Perl_pp_ggrent */ |
1299 | Perl_pp_ggrgid, /* implemented by Perl_pp_ggrent */ | |
ef69c8fc | 1300 | Perl_pp_ggrent, |
720d5dbf NC |
1301 | Perl_pp_sgrent, /* implemented by Perl_pp_ehostent */ |
1302 | Perl_pp_egrent, /* implemented by Perl_pp_ehostent */ | |
ef69c8fc BM |
1303 | Perl_pp_getlogin, |
1304 | Perl_pp_syscall, | |
1305 | Perl_pp_lock, | |
1306 | Perl_pp_once, | |
6f3ed336 NC |
1307 | Perl_pp_custom, /* implemented by Perl_unimplemented_op */ |
1308 | Perl_pp_reach, /* implemented by Perl_pp_rkeys */ | |
cba5a3b0 | 1309 | Perl_pp_rkeys, |
6f3ed336 | 1310 | Perl_pp_rvalues, /* implemented by Perl_pp_rkeys */ |
deb8a388 | 1311 | Perl_pp_coreargs, |
84ed0108 | 1312 | Perl_pp_runcv, |
838f2281 | 1313 | Perl_pp_fc, |
ac217057 | 1314 | Perl_pp_padcv, |
ecf9c8b7 | 1315 | Perl_pp_introcv, |
13f89586 | 1316 | Perl_pp_clonecv, |
a7fd8ef6 | 1317 | Perl_pp_padrange, |
27da23d5 | 1318 | } |
79072805 | 1319 | #endif |
97aff369 | 1320 | #ifdef PERL_PPADDR_INITED |
27da23d5 | 1321 | ; |
97aff369 | 1322 | #endif |
79072805 | 1323 | |
27da23d5 | 1324 | #ifdef PERL_GLOBAL_STRUCT_INIT |
97aff369 | 1325 | # define PERL_CHECK_INITED |
27da23d5 | 1326 | static const Perl_check_t Gcheck[] |
79072805 | 1327 | #else |
27da23d5 | 1328 | # ifndef PERL_GLOBAL_STRUCT |
97aff369 | 1329 | # define PERL_CHECK_INITED |
27da23d5 JH |
1330 | EXT Perl_check_t PL_check[] /* or perlvars.h */ |
1331 | # endif | |
1332 | #endif | |
1333 | #if (defined(DOINIT) && !defined(PERL_GLOBAL_STRUCT)) || defined(PERL_GLOBAL_STRUCT_INIT) | |
97aff369 | 1334 | # define PERL_CHECK_INITED |
27da23d5 | 1335 | = { |
ef69c8fc BM |
1336 | Perl_ck_null, /* null */ |
1337 | Perl_ck_null, /* stub */ | |
1338 | Perl_ck_fun, /* scalar */ | |
1339 | Perl_ck_null, /* pushmark */ | |
1340 | Perl_ck_null, /* wantarray */ | |
1341 | Perl_ck_svconst, /* const */ | |
1342 | Perl_ck_null, /* gvsv */ | |
1343 | Perl_ck_null, /* gv */ | |
1344 | Perl_ck_null, /* gelem */ | |
1345 | Perl_ck_null, /* padsv */ | |
1346 | Perl_ck_null, /* padav */ | |
1347 | Perl_ck_null, /* padhv */ | |
1348 | Perl_ck_null, /* padany */ | |
1349 | Perl_ck_null, /* pushre */ | |
1350 | Perl_ck_rvconst, /* rv2gv */ | |
1351 | Perl_ck_rvconst, /* rv2sv */ | |
1352 | Perl_ck_null, /* av2arylen */ | |
1353 | Perl_ck_rvconst, /* rv2cv */ | |
1354 | Perl_ck_anoncode, /* anoncode */ | |
1355 | Perl_ck_null, /* prototype */ | |
1356 | Perl_ck_spair, /* refgen */ | |
1357 | Perl_ck_null, /* srefgen */ | |
1358 | Perl_ck_fun, /* ref */ | |
1359 | Perl_ck_fun, /* bless */ | |
9ce1fb7d | 1360 | Perl_ck_backtick, /* backtick */ |
ef69c8fc BM |
1361 | Perl_ck_glob, /* glob */ |
1362 | Perl_ck_readline, /* readline */ | |
1363 | Perl_ck_null, /* rcatline */ | |
1364 | Perl_ck_fun, /* regcmaybe */ | |
1365 | Perl_ck_fun, /* regcreset */ | |
1366 | Perl_ck_null, /* regcomp */ | |
1367 | Perl_ck_match, /* match */ | |
1368 | Perl_ck_match, /* qr */ | |
1369 | Perl_ck_match, /* subst */ | |
1370 | Perl_ck_null, /* substcont */ | |
1371 | Perl_ck_match, /* trans */ | |
bfa14884 | 1372 | Perl_ck_match, /* transr */ |
ef69c8fc BM |
1373 | Perl_ck_sassign, /* sassign */ |
1374 | Perl_ck_null, /* aassign */ | |
1375 | Perl_ck_spair, /* chop */ | |
1376 | Perl_ck_null, /* schop */ | |
1377 | Perl_ck_spair, /* chomp */ | |
1378 | Perl_ck_null, /* schomp */ | |
1379 | Perl_ck_defined, /* defined */ | |
89c5c07e | 1380 | Perl_ck_fun, /* undef */ |
ef69c8fc | 1381 | Perl_ck_fun, /* study */ |
abe56f58 | 1382 | Perl_ck_fun, /* pos */ |
ef69c8fc BM |
1383 | Perl_ck_lfun, /* preinc */ |
1384 | Perl_ck_lfun, /* i_preinc */ | |
1385 | Perl_ck_lfun, /* predec */ | |
1386 | Perl_ck_lfun, /* i_predec */ | |
1387 | Perl_ck_lfun, /* postinc */ | |
1388 | Perl_ck_lfun, /* i_postinc */ | |
1389 | Perl_ck_lfun, /* postdec */ | |
1390 | Perl_ck_lfun, /* i_postdec */ | |
1391 | Perl_ck_null, /* pow */ | |
1392 | Perl_ck_null, /* multiply */ | |
1393 | Perl_ck_null, /* i_multiply */ | |
1394 | Perl_ck_null, /* divide */ | |
1395 | Perl_ck_null, /* i_divide */ | |
1396 | Perl_ck_null, /* modulo */ | |
1397 | Perl_ck_null, /* i_modulo */ | |
1398 | Perl_ck_repeat, /* repeat */ | |
1399 | Perl_ck_null, /* add */ | |
1400 | Perl_ck_null, /* i_add */ | |
1401 | Perl_ck_null, /* subtract */ | |
1402 | Perl_ck_null, /* i_subtract */ | |
1403 | Perl_ck_concat, /* concat */ | |
1404 | Perl_ck_fun, /* stringify */ | |
1405 | Perl_ck_bitop, /* left_shift */ | |
1406 | Perl_ck_bitop, /* right_shift */ | |
89474f50 FC |
1407 | Perl_ck_cmp, /* lt */ |
1408 | Perl_ck_cmp, /* i_lt */ | |
1409 | Perl_ck_cmp, /* gt */ | |
1410 | Perl_ck_cmp, /* i_gt */ | |
1411 | Perl_ck_cmp, /* le */ | |
1412 | Perl_ck_cmp, /* i_le */ | |
1413 | Perl_ck_cmp, /* ge */ | |
1414 | Perl_ck_cmp, /* i_ge */ | |
ef69c8fc BM |
1415 | Perl_ck_null, /* eq */ |
1416 | Perl_ck_null, /* i_eq */ | |
1417 | Perl_ck_null, /* ne */ | |
1418 | Perl_ck_null, /* i_ne */ | |
1419 | Perl_ck_null, /* ncmp */ | |
1420 | Perl_ck_null, /* i_ncmp */ | |
1421 | Perl_ck_null, /* slt */ | |
1422 | Perl_ck_null, /* sgt */ | |
1423 | Perl_ck_null, /* sle */ | |
1424 | Perl_ck_null, /* sge */ | |
1425 | Perl_ck_null, /* seq */ | |
1426 | Perl_ck_null, /* sne */ | |
1427 | Perl_ck_null, /* scmp */ | |
1428 | Perl_ck_bitop, /* bit_and */ | |
1429 | Perl_ck_bitop, /* bit_xor */ | |
1430 | Perl_ck_bitop, /* bit_or */ | |
1431 | Perl_ck_null, /* negate */ | |
1432 | Perl_ck_null, /* i_negate */ | |
1433 | Perl_ck_null, /* not */ | |
1434 | Perl_ck_bitop, /* complement */ | |
1435 | Perl_ck_smartmatch, /* smartmatch */ | |
1436 | Perl_ck_fun, /* atan2 */ | |
1437 | Perl_ck_fun, /* sin */ | |
1438 | Perl_ck_fun, /* cos */ | |
1439 | Perl_ck_fun, /* rand */ | |
1440 | Perl_ck_fun, /* srand */ | |
1441 | Perl_ck_fun, /* exp */ | |
1442 | Perl_ck_fun, /* log */ | |
1443 | Perl_ck_fun, /* sqrt */ | |
1444 | Perl_ck_fun, /* int */ | |
1445 | Perl_ck_fun, /* hex */ | |
1446 | Perl_ck_fun, /* oct */ | |
1447 | Perl_ck_fun, /* abs */ | |
e508c8a4 | 1448 | Perl_ck_length, /* length */ |
ef69c8fc BM |
1449 | Perl_ck_substr, /* substr */ |
1450 | Perl_ck_fun, /* vec */ | |
1451 | Perl_ck_index, /* index */ | |
1452 | Perl_ck_index, /* rindex */ | |
69974ce6 | 1453 | Perl_ck_lfun, /* sprintf */ |
ef69c8fc BM |
1454 | Perl_ck_fun, /* formline */ |
1455 | Perl_ck_fun, /* ord */ | |
1456 | Perl_ck_fun, /* chr */ | |
1457 | Perl_ck_fun, /* crypt */ | |
1458 | Perl_ck_fun, /* ucfirst */ | |
1459 | Perl_ck_fun, /* lcfirst */ | |
1460 | Perl_ck_fun, /* uc */ | |
1461 | Perl_ck_fun, /* lc */ | |
1462 | Perl_ck_fun, /* quotemeta */ | |
1463 | Perl_ck_rvconst, /* rv2av */ | |
1464 | Perl_ck_null, /* aelemfast */ | |
bfa14884 | 1465 | Perl_ck_null, /* aelemfast_lex */ |
ef69c8fc BM |
1466 | Perl_ck_null, /* aelem */ |
1467 | Perl_ck_null, /* aslice */ | |
6dd3e0f2 | 1468 | Perl_ck_null, /* kvaslice */ |
ef69c8fc BM |
1469 | Perl_ck_each, /* aeach */ |
1470 | Perl_ck_each, /* akeys */ | |
1471 | Perl_ck_each, /* avalues */ | |
1472 | Perl_ck_each, /* each */ | |
1473 | Perl_ck_each, /* values */ | |
1474 | Perl_ck_each, /* keys */ | |
1475 | Perl_ck_delete, /* delete */ | |
1476 | Perl_ck_exists, /* exists */ | |
1477 | Perl_ck_rvconst, /* rv2hv */ | |
1478 | Perl_ck_null, /* helem */ | |
1479 | Perl_ck_null, /* hslice */ | |
5cae3edb | 1480 | Perl_ck_null, /* kvhslice */ |
ea5703f4 | 1481 | Perl_ck_fun, /* unpack */ |
ef69c8fc BM |
1482 | Perl_ck_fun, /* pack */ |
1483 | Perl_ck_split, /* split */ | |
1484 | Perl_ck_join, /* join */ | |
1485 | Perl_ck_null, /* list */ | |
1486 | Perl_ck_null, /* lslice */ | |
1487 | Perl_ck_fun, /* anonlist */ | |
1488 | Perl_ck_fun, /* anonhash */ | |
d4fc4415 FC |
1489 | Perl_ck_fun, /* splice */ |
1490 | Perl_ck_fun, /* push */ | |
ef69c8fc BM |
1491 | Perl_ck_shift, /* pop */ |
1492 | Perl_ck_shift, /* shift */ | |
d4fc4415 | 1493 | Perl_ck_fun, /* unshift */ |
ef69c8fc BM |
1494 | Perl_ck_sort, /* sort */ |
1495 | Perl_ck_fun, /* reverse */ | |
1496 | Perl_ck_grep, /* grepstart */ | |
1497 | Perl_ck_null, /* grepwhile */ | |
1498 | Perl_ck_grep, /* mapstart */ | |
1499 | Perl_ck_null, /* mapwhile */ | |
1500 | Perl_ck_null, /* range */ | |
1501 | Perl_ck_null, /* flip */ | |
1502 | Perl_ck_null, /* flop */ | |
1503 | Perl_ck_null, /* and */ | |
1504 | Perl_ck_null, /* or */ | |
1505 | Perl_ck_null, /* xor */ | |
1506 | Perl_ck_null, /* dor */ | |
1507 | Perl_ck_null, /* cond_expr */ | |
1508 | Perl_ck_null, /* andassign */ | |
1509 | Perl_ck_null, /* orassign */ | |
1510 | Perl_ck_null, /* dorassign */ | |
1511 | Perl_ck_method, /* method */ | |
1512 | Perl_ck_subr, /* entersub */ | |
1513 | Perl_ck_null, /* leavesub */ | |
1514 | Perl_ck_null, /* leavesublv */ | |
1515 | Perl_ck_fun, /* caller */ | |
1516 | Perl_ck_fun, /* warn */ | |
97124ef6 | 1517 | Perl_ck_fun, /* die */ |
ef69c8fc BM |
1518 | Perl_ck_fun, /* reset */ |
1519 | Perl_ck_null, /* lineseq */ | |
1520 | Perl_ck_null, /* nextstate */ | |
1521 | Perl_ck_null, /* dbstate */ | |
1522 | Perl_ck_null, /* unstack */ | |
1523 | Perl_ck_null, /* enter */ | |
1524 | Perl_ck_null, /* leave */ | |
1525 | Perl_ck_null, /* scope */ | |
1526 | Perl_ck_null, /* enteriter */ | |
1527 | Perl_ck_null, /* iter */ | |
1528 | Perl_ck_null, /* enterloop */ | |
1529 | Perl_ck_null, /* leaveloop */ | |
1530 | Perl_ck_return, /* return */ | |
1531 | Perl_ck_null, /* last */ | |
1532 | Perl_ck_null, /* next */ | |
1533 | Perl_ck_null, /* redo */ | |
1534 | Perl_ck_null, /* dump */ | |
1535 | Perl_ck_null, /* goto */ | |
5450b4d8 | 1536 | Perl_ck_fun, /* exit */ |
ef69c8fc BM |
1537 | Perl_ck_null, /* method_named */ |
1538 | Perl_ck_null, /* entergiven */ | |
1539 | Perl_ck_null, /* leavegiven */ | |
1540 | Perl_ck_null, /* enterwhen */ | |
1541 | Perl_ck_null, /* leavewhen */ | |
1542 | Perl_ck_null, /* break */ | |
1543 | Perl_ck_null, /* continue */ | |
1544 | Perl_ck_open, /* open */ | |
1545 | Perl_ck_fun, /* close */ | |
1546 | Perl_ck_fun, /* pipe_op */ | |
1547 | Perl_ck_fun, /* fileno */ | |
1548 | Perl_ck_fun, /* umask */ | |
1549 | Perl_ck_fun, /* binmode */ | |
1550 | Perl_ck_fun, /* tie */ | |
1551 | Perl_ck_fun, /* untie */ | |
1552 | Perl_ck_fun, /* tied */ | |
1553 | Perl_ck_fun, /* dbmopen */ | |
1554 | Perl_ck_fun, /* dbmclose */ | |
1555 | Perl_ck_select, /* sselect */ | |
1556 | Perl_ck_select, /* select */ | |
1557 | Perl_ck_eof, /* getc */ | |
1558 | Perl_ck_fun, /* read */ | |
1559 | Perl_ck_fun, /* enterwrite */ | |
1560 | Perl_ck_null, /* leavewrite */ | |
1561 | Perl_ck_listiob, /* prtf */ | |
1562 | Perl_ck_listiob, /* print */ | |
1563 | Perl_ck_listiob, /* say */ | |
1564 | Perl_ck_fun, /* sysopen */ | |
1565 | Perl_ck_fun, /* sysseek */ | |
1566 | Perl_ck_fun, /* sysread */ | |
1567 | Perl_ck_fun, /* syswrite */ | |
1568 | Perl_ck_eof, /* eof */ | |
8dc99089 | 1569 | Perl_ck_tell, /* tell */ |
423e8af5 | 1570 | Perl_ck_tell, /* seek */ |
ef69c8fc BM |
1571 | Perl_ck_trunc, /* truncate */ |
1572 | Perl_ck_fun, /* fcntl */ | |
1573 | Perl_ck_fun, /* ioctl */ | |
1574 | Perl_ck_fun, /* flock */ | |
1575 | Perl_ck_fun, /* send */ | |
1576 | Perl_ck_fun, /* recv */ | |
1577 | Perl_ck_fun, /* socket */ | |
1578 | Perl_ck_fun, /* sockpair */ | |
1579 | Perl_ck_fun, /* bind */ | |
1580 | Perl_ck_fun, /* connect */ | |
1581 | Perl_ck_fun, /* listen */ | |
1582 | Perl_ck_fun, /* accept */ | |
1583 | Perl_ck_fun, /* shutdown */ | |
1584 | Perl_ck_fun, /* gsockopt */ | |
1585 | Perl_ck_fun, /* ssockopt */ | |
1586 | Perl_ck_fun, /* getsockname */ | |
1587 | Perl_ck_fun, /* getpeername */ | |
1588 | Perl_ck_ftst, /* lstat */ | |
1589 | Perl_ck_ftst, /* stat */ | |
1590 | Perl_ck_ftst, /* ftrread */ | |
1591 | Perl_ck_ftst, /* ftrwrite */ | |
1592 | Perl_ck_ftst, /* ftrexec */ | |
1593 | Perl_ck_ftst, /* fteread */ | |
1594 | Perl_ck_ftst, /* ftewrite */ | |
1595 | Perl_ck_ftst, /* fteexec */ | |
1596 | Perl_ck_ftst, /* ftis */ | |
1597 | Perl_ck_ftst, /* ftsize */ | |
1598 | Perl_ck_ftst, /* ftmtime */ | |
1599 | Perl_ck_ftst, /* ftatime */ | |
1600 | Perl_ck_ftst, /* ftctime */ | |
1601 | Perl_ck_ftst, /* ftrowned */ | |
1602 | Perl_ck_ftst, /* fteowned */ | |
1603 | Perl_ck_ftst, /* ftzero */ | |
1604 | Perl_ck_ftst, /* ftsock */ | |
1605 | Perl_ck_ftst, /* ftchr */ | |
1606 | Perl_ck_ftst, /* ftblk */ | |
1607 | Perl_ck_ftst, /* ftfile */ | |
1608 | Perl_ck_ftst, /* ftdir */ | |
1609 | Perl_ck_ftst, /* ftpipe */ | |
1610 | Perl_ck_ftst, /* ftsuid */ | |
1611 | Perl_ck_ftst, /* ftsgid */ | |
1612 | Perl_ck_ftst, /* ftsvtx */ | |
1613 | Perl_ck_ftst, /* ftlink */ | |
1614 | Perl_ck_ftst, /* fttty */ | |
1615 | Perl_ck_ftst, /* fttext */ | |
1616 | Perl_ck_ftst, /* ftbinary */ | |
8777c9be | 1617 | Perl_ck_trunc, /* chdir */ |
ef69c8fc BM |
1618 | Perl_ck_fun, /* chown */ |
1619 | Perl_ck_fun, /* chroot */ | |
1620 | Perl_ck_fun, /* unlink */ | |
1621 | Perl_ck_fun, /* chmod */ | |
1622 | Perl_ck_fun, /* utime */ | |
1623 | Perl_ck_fun, /* rename */ | |
1624 | Perl_ck_fun, /* link */ | |
1625 | Perl_ck_fun, /* symlink */ | |
1626 | Perl_ck_fun, /* readlink */ | |
1627 | Perl_ck_fun, /* mkdir */ | |
1628 | Perl_ck_fun, /* rmdir */ | |
1629 | Perl_ck_fun, /* open_dir */ | |
1630 | Perl_ck_fun, /* readdir */ | |
1631 | Perl_ck_fun, /* telldir */ | |
1632 | Perl_ck_fun, /* seekdir */ | |
1633 | Perl_ck_fun, /* rewinddir */ | |
1634 | Perl_ck_fun, /* closedir */ | |
1635 | Perl_ck_null, /* fork */ | |
1636 | Perl_ck_null, /* wait */ | |
1637 | Perl_ck_fun, /* waitpid */ | |
1638 | Perl_ck_exec, /* system */ | |
1639 | Perl_ck_exec, /* exec */ | |
1640 | Perl_ck_fun, /* kill */ | |
1641 | Perl_ck_null, /* getppid */ | |
1642 | Perl_ck_fun, /* getpgrp */ | |
1643 | Perl_ck_fun, /* setpgrp */ | |
1644 | Perl_ck_fun, /* getpriority */ | |
1645 | Perl_ck_fun, /* setpriority */ | |
1646 | Perl_ck_null, /* time */ | |
1647 | Perl_ck_null, /* tms */ | |
1648 | Perl_ck_fun, /* localtime */ | |
1649 | Perl_ck_fun, /* gmtime */ | |
1650 | Perl_ck_fun, /* alarm */ | |
1651 | Perl_ck_fun, /* sleep */ | |
1652 | Perl_ck_fun, /* shmget */ | |
1653 | Perl_ck_fun, /* shmctl */ | |
1654 | Perl_ck_fun, /* shmread */ | |
1655 | Perl_ck_fun, /* shmwrite */ | |
1656 | Perl_ck_fun, /* msgget */ | |
1657 | Perl_ck_fun, /* msgctl */ | |
1658 | Perl_ck_fun, /* msgsnd */ | |
1659 | Perl_ck_fun, /* msgrcv */ | |
1660 | Perl_ck_fun, /* semop */ | |
1661 | Perl_ck_fun, /* semget */ | |
1662 | Perl_ck_fun, /* semctl */ | |
1663 | Perl_ck_require, /* require */ | |
1664 | Perl_ck_fun, /* dofile */ | |
1665 | Perl_ck_svconst, /* hintseval */ | |
1666 | Perl_ck_eval, /* entereval */ | |
1667 | Perl_ck_null, /* leaveeval */ | |
1668 | Perl_ck_eval, /* entertry */ | |
1669 | Perl_ck_null, /* leavetry */ | |
1670 | Perl_ck_fun, /* ghbyname */ | |
1671 | Perl_ck_fun, /* ghbyaddr */ | |
1672 | Perl_ck_null, /* ghostent */ | |
1673 | Perl_ck_fun, /* gnbyname */ | |
1674 | Perl_ck_fun, /* gnbyaddr */ | |
1675 | Perl_ck_null, /* gnetent */ | |
1676 | Perl_ck_fun, /* gpbyname */ | |
1677 | Perl_ck_fun, /* gpbynumber */ | |
1678 | Perl_ck_null, /* gprotoent */ | |
1679 | Perl_ck_fun, /* gsbyname */ | |
1680 | Perl_ck_fun, /* gsbyport */ | |
1681 | Perl_ck_null, /* gservent */ | |
1682 | Perl_ck_fun, /* shostent */ | |
1683 | Perl_ck_fun, /* snetent */ | |
1684 | Perl_ck_fun, /* sprotoent */ | |
1685 | Perl_ck_fun, /* sservent */ | |
1686 | Perl_ck_null, /* ehostent */ | |
1687 | Perl_ck_null, /* enetent */ | |
1688 | Perl_ck_null, /* eprotoent */ | |
1689 | Perl_ck_null, /* eservent */ | |
1690 | Perl_ck_fun, /* gpwnam */ | |
1691 | Perl_ck_fun, /* gpwuid */ | |
1692 | Perl_ck_null, /* gpwent */ | |
1693 | Perl_ck_null, /* spwent */ | |
1694 | Perl_ck_null, /* epwent */ | |
1695 | Perl_ck_fun, /* ggrnam */ | |
1696 | Perl_ck_fun, /* ggrgid */ | |
1697 | Perl_ck_null, /* ggrent */ | |
1698 | Perl_ck_null, /* sgrent */ | |
1699 | Perl_ck_null, /* egrent */ | |
1700 | Perl_ck_null, /* getlogin */ | |
1701 | Perl_ck_fun, /* syscall */ | |
1702 | Perl_ck_rfun, /* lock */ | |
1703 | Perl_ck_null, /* once */ | |
1704 | Perl_ck_null, /* custom */ | |
cba5a3b0 DG |
1705 | Perl_ck_each, /* reach */ |
1706 | Perl_ck_each, /* rkeys */ | |
1707 | Perl_ck_each, /* rvalues */ | |
deb8a388 | 1708 | Perl_ck_null, /* coreargs */ |
84ed0108 | 1709 | Perl_ck_null, /* runcv */ |
838f2281 | 1710 | Perl_ck_fun, /* fc */ |
ac217057 | 1711 | Perl_ck_null, /* padcv */ |
ecf9c8b7 | 1712 | Perl_ck_null, /* introcv */ |
13f89586 | 1713 | Perl_ck_null, /* clonecv */ |
a7fd8ef6 | 1714 | Perl_ck_null, /* padrange */ |
27da23d5 | 1715 | } |
79072805 | 1716 | #endif |
97aff369 | 1717 | #ifdef PERL_CHECK_INITED |
27da23d5 | 1718 | ; |
97aff369 | 1719 | #endif /* #ifdef PERL_CHECK_INITED */ |
27da23d5 JH |
1720 | |
1721 | #ifndef PERL_GLOBAL_STRUCT_INIT | |
79072805 LW |
1722 | |
1723 | #ifndef DOINIT | |
1ccb7c8d | 1724 | EXTCONST U32 PL_opargs[]; |
79072805 | 1725 | #else |
1ccb7c8d | 1726 | EXTCONST U32 PL_opargs[] = { |
79072805 | 1727 | 0x00000000, /* null */ |
93a17b20 | 1728 | 0x00000000, /* stub */ |
903fd87c | 1729 | 0x00001b04, /* scalar */ |
79072805 | 1730 | 0x00000004, /* pushmark */ |
903fd87c NC |
1731 | 0x00000004, /* wantarray */ |
1732 | 0x00000604, /* const */ | |
1733 | 0x00000644, /* gvsv */ | |
1734 | 0x00000644, /* gv */ | |
1735 | 0x00011240, /* gelem */ | |
748a9306 LW |
1736 | 0x00000044, /* padsv */ |
1737 | 0x00000040, /* padav */ | |
1738 | 0x00000040, /* padhv */ | |
1739 | 0x00000040, /* padany */ | |
903fd87c NC |
1740 | 0x00000540, /* pushre */ |
1741 | 0x00000144, /* rv2gv */ | |
1742 | 0x00000144, /* rv2sv */ | |
1743 | 0x00000104, /* av2arylen */ | |
1744 | 0x00000140, /* rv2cv */ | |
1745 | 0x00000600, /* anoncode */ | |
1746 | 0x00001b04, /* prototype */ | |
1747 | 0x00002101, /* refgen */ | |
1748 | 0x00001106, /* srefgen */ | |
1749 | 0x00009b8c, /* ref */ | |
1750 | 0x00091404, /* bless */ | |
1751 | 0x00009b88, /* backtick */ | |
1752 | 0x00009408, /* glob */ | |
1753 | 0x0000eb08, /* readline */ | |
1754 | 0x00000608, /* rcatline */ | |
1755 | 0x00001104, /* regcmaybe */ | |
1756 | 0x00001104, /* regcreset */ | |
1757 | 0x00001304, /* regcomp */ | |
1758 | 0x00000540, /* match */ | |
1759 | 0x00000504, /* qr */ | |
1760 | 0x00001544, /* subst */ | |
1761 | 0x00000344, /* substcont */ | |
1762 | 0x00001804, /* trans */ | |
bfa14884 | 1763 | 0x00001804, /* transr */ |
79072805 | 1764 | 0x00000004, /* sassign */ |
903fd87c NC |
1765 | 0x00022208, /* aassign */ |
1766 | 0x00002b0d, /* chop */ | |
1767 | 0x00009b8c, /* schop */ | |
1768 | 0x00002b1d, /* chomp */ | |
1769 | 0x00009b9c, /* schomp */ | |
1770 | 0x00009b84, /* defined */ | |
89c5c07e | 1771 | 0x0000fb04, /* undef */ |
903fd87c | 1772 | 0x00009b84, /* study */ |
abe56f58 | 1773 | 0x0000fb8c, /* pos */ |
903fd87c NC |
1774 | 0x00001164, /* preinc */ |
1775 | 0x00001144, /* i_preinc */ | |
1776 | 0x00001164, /* predec */ | |
1777 | 0x00001144, /* i_predec */ | |
1778 | 0x0000116c, /* postinc */ | |
1779 | 0x0000115c, /* i_postinc */ | |
1780 | 0x0000116c, /* postdec */ | |
1781 | 0x0000115c, /* i_postdec */ | |
1782 | 0x0001121e, /* pow */ | |
1783 | 0x0001123e, /* multiply */ | |
1784 | 0x0001121e, /* i_multiply */ | |
1785 | 0x0001123e, /* divide */ | |
1786 | 0x0001121e, /* i_divide */ | |
1787 | 0x0001123e, /* modulo */ | |
1788 | 0x0001121e, /* i_modulo */ | |
baed7faa | 1789 | 0x0001220b, /* repeat */ |
903fd87c NC |
1790 | 0x0001123e, /* add */ |
1791 | 0x0001121e, /* i_add */ | |
1792 | 0x0001123e, /* subtract */ | |
1793 | 0x0001121e, /* i_subtract */ | |
1794 | 0x0001121e, /* concat */ | |
1795 | 0x0000141e, /* stringify */ | |
1796 | 0x0001121e, /* left_shift */ | |
1797 | 0x0001121e, /* right_shift */ | |
1798 | 0x00011226, /* lt */ | |
1799 | 0x00011206, /* i_lt */ | |
1800 | 0x00011226, /* gt */ | |
1801 | 0x00011206, /* i_gt */ | |
1802 | 0x00011226, /* le */ | |
1803 | 0x00011206, /* i_le */ | |
1804 | 0x00011226, /* ge */ | |
1805 | 0x00011206, /* i_ge */ | |
1806 | 0x00011226, /* eq */ | |
1807 | 0x00011206, /* i_eq */ | |
1808 | 0x00011226, /* ne */ | |
1809 | 0x00011206, /* i_ne */ | |
1810 | 0x0001122e, /* ncmp */ | |
1811 | 0x0001120e, /* i_ncmp */ | |
1812 | 0x00011206, /* slt */ | |
1813 | 0x00011206, /* sgt */ | |
1814 | 0x00011206, /* sle */ | |
1815 | 0x00011206, /* sge */ | |
1816 | 0x00011206, /* seq */ | |
1817 | 0x00011206, /* sne */ | |
1818 | 0x0001120e, /* scmp */ | |
1819 | 0x0001120e, /* bit_and */ | |
1820 | 0x0001120e, /* bit_xor */ | |
1821 | 0x0001120e, /* bit_or */ | |
1822 | 0x0000112e, /* negate */ | |
1823 | 0x0000111e, /* i_negate */ | |
1824 | 0x00001106, /* not */ | |
1825 | 0x0000110e, /* complement */ | |
1826 | 0x00000204, /* smartmatch */ | |
1827 | 0x0001141e, /* atan2 */ | |
1828 | 0x00009b9e, /* sin */ | |
1829 | 0x00009b9e, /* cos */ | |
1830 | 0x00009b1c, /* rand */ | |
1831 | 0x00009b1c, /* srand */ | |
1832 | 0x00009b9e, /* exp */ | |
1833 | 0x00009b9e, /* log */ | |
1834 | 0x00009b9e, /* sqrt */ | |
1835 | 0x00009b9e, /* int */ | |
1836 | 0x00009b9e, /* hex */ | |
1837 | 0x00009b9e, /* oct */ | |
1838 | 0x00009b9e, /* abs */ | |
1839 | 0x00009b9e, /* length */ | |
1840 | 0x0991140c, /* substr */ | |
1841 | 0x0011140c, /* vec */ | |
1842 | 0x0091141c, /* index */ | |
1843 | 0x0091141c, /* rindex */ | |
1844 | 0x0002140f, /* sprintf */ | |
1845 | 0x00021405, /* formline */ | |
1846 | 0x00009b9e, /* ord */ | |
1847 | 0x00009b9e, /* chr */ | |
1848 | 0x0001141e, /* crypt */ | |
1849 | 0x00009b8e, /* ucfirst */ | |
1850 | 0x00009b8e, /* lcfirst */ | |
1851 | 0x00009b8e, /* uc */ | |
1852 | 0x00009b8e, /* lc */ | |
1853 | 0x00009b8e, /* quotemeta */ | |
1854 | 0x00000148, /* rv2av */ | |
1855 | 0x00013604, /* aelemfast */ | |
bfa14884 | 1856 | 0x00013040, /* aelemfast_lex */ |
903fd87c NC |
1857 | 0x00013204, /* aelem */ |
1858 | 0x00023401, /* aslice */ | |
6dd3e0f2 | 1859 | 0x00023401, /* kvaslice */ |
903fd87c NC |
1860 | 0x00003b00, /* aeach */ |
1861 | 0x00003b08, /* akeys */ | |
1862 | 0x00003b08, /* avalues */ | |
1863 | 0x00004b00, /* each */ | |
1864 | 0x00004b08, /* values */ | |
1865 | 0x00004b08, /* keys */ | |
1866 | 0x00001b00, /* delete */ | |
1867 | 0x00001b04, /* exists */ | |
1a8bdda9 | 1868 | 0x00000140, /* rv2hv */ |
903fd87c NC |
1869 | 0x00014204, /* helem */ |
1870 | 0x00024401, /* hslice */ | |
5cae3edb | 1871 | 0x00024401, /* kvhslice */ |
ea5703f4 | 1872 | 0x00091480, /* unpack */ |
dd9a6ccf | 1873 | 0x0002140f, /* pack */ |
903fd87c NC |
1874 | 0x00111408, /* split */ |
1875 | 0x0002140d, /* join */ | |
1876 | 0x00002401, /* list */ | |
1877 | 0x00224200, /* lslice */ | |
1878 | 0x00002405, /* anonlist */ | |
1879 | 0x00002405, /* anonhash */ | |
1880 | 0x02993401, /* splice */ | |
1881 | 0x0002341d, /* push */ | |
1882 | 0x0000bb04, /* pop */ | |
1883 | 0x0000bb04, /* shift */ | |
1884 | 0x0002341d, /* unshift */ | |
1885 | 0x0002d441, /* sort */ | |
1886 | 0x00002409, /* reverse */ | |
1887 | 0x00025441, /* grepstart */ | |
1888 | 0x00000348, /* grepwhile */ | |
1889 | 0x00025441, /* mapstart */ | |
1890 | 0x00000348, /* mapwhile */ | |
1891 | 0x00011300, /* range */ | |
1892 | 0x00011100, /* flip */ | |
1893 | 0x00000100, /* flop */ | |
1894 | 0x00000300, /* and */ | |
1895 | 0x00000300, /* or */ | |
1896 | 0x00011206, /* xor */ | |
1897 | 0x00000300, /* dor */ | |
1898 | 0x00000340, /* cond_expr */ | |
1899 | 0x00000304, /* andassign */ | |
1900 | 0x00000304, /* orassign */ | |
1901 | 0x00000304, /* dorassign */ | |
1902 | 0x00000140, /* method */ | |
1903 | 0x00002149, /* entersub */ | |
1904 | 0x00000100, /* leavesub */ | |
1905 | 0x00000100, /* leavesublv */ | |
1906 | 0x00009b08, /* caller */ | |
1907 | 0x0000240d, /* warn */ | |
1908 | 0x0000244d, /* die */ | |
1909 | 0x00009b04, /* reset */ | |
1910 | 0x00000400, /* lineseq */ | |
1911 | 0x00000a04, /* nextstate */ | |
1912 | 0x00000a04, /* dbstate */ | |
79072805 LW |
1913 | 0x00000004, /* unstack */ |
1914 | 0x00000000, /* enter */ | |
903fd87c NC |
1915 | 0x00000400, /* leave */ |
1916 | 0x00000400, /* scope */ | |
1917 | 0x00000940, /* enteriter */ | |
79072805 | 1918 | 0x00000000, /* iter */ |
903fd87c NC |
1919 | 0x00000940, /* enterloop */ |
1920 | 0x00000200, /* leaveloop */ | |
1921 | 0x00002441, /* return */ | |
1922 | 0x00000d44, /* last */ | |
1923 | 0x00000d44, /* next */ | |
1924 | 0x00000d44, /* redo */ | |
1925 | 0x00000d44, /* dump */ | |
1926 | 0x00000d44, /* goto */ | |
1927 | 0x00009b44, /* exit */ | |
1928 | 0x00000640, /* method_named */ | |
1929 | 0x00000340, /* entergiven */ | |
1930 | 0x00000100, /* leavegiven */ | |
1931 | 0x00000340, /* enterwhen */ | |
1932 | 0x00000100, /* leavewhen */ | |
fdecdb95 NC |
1933 | 0x00000000, /* break */ |
1934 | 0x00000000, /* continue */ | |
903fd87c NC |
1935 | 0x0029640d, /* open */ |
1936 | 0x0000eb04, /* close */ | |
1937 | 0x00066404, /* pipe_op */ | |
1938 | 0x00006b0c, /* fileno */ | |
1939 | 0x00009b0c, /* umask */ | |
1940 | 0x00096404, /* binmode */ | |
1941 | 0x00217445, /* tie */ | |
1942 | 0x00007b04, /* untie */ | |
1943 | 0x00007b04, /* tied */ | |
1944 | 0x00114404, /* dbmopen */ | |
1945 | 0x00004b04, /* dbmclose */ | |
1946 | 0x01111408, /* sselect */ | |
1947 | 0x0000e40c, /* select */ | |
1948 | 0x0000eb0c, /* getc */ | |
1949 | 0x0917640d, /* read */ | |
1950 | 0x0000eb44, /* enterwrite */ | |
1951 | 0x00000100, /* leavewrite */ | |
1952 | 0x0002e405, /* prtf */ | |
1953 | 0x0002e405, /* print */ | |
1954 | 0x0002e405, /* say */ | |
1955 | 0x09116404, /* sysopen */ | |
1956 | 0x00116404, /* sysseek */ | |
1957 | 0x0917640d, /* sysread */ | |
1958 | 0x0991640d, /* syswrite */ | |
1959 | 0x0000eb04, /* eof */ | |
1960 | 0x0000eb0c, /* tell */ | |
1961 | 0x00116404, /* seek */ | |
1962 | 0x00011404, /* truncate */ | |
1963 | 0x0011640c, /* fcntl */ | |
1964 | 0x0011640c, /* ioctl */ | |
1965 | 0x0001641c, /* flock */ | |
1966 | 0x0911640d, /* send */ | |
1967 | 0x0117640d, /* recv */ | |
1968 | 0x01116404, /* socket */ | |
1969 | 0x11166404, /* sockpair */ | |
1970 | 0x00016404, /* bind */ | |
1971 | 0x00016404, /* connect */ | |
1972 | 0x00016404, /* listen */ | |
1973 | 0x0006640c, /* accept */ | |
1974 | 0x0001640c, /* shutdown */ | |
1975 | 0x00116404, /* gsockopt */ | |
1976 | 0x01116404, /* ssockopt */ | |
1977 | 0x00006b04, /* getsockname */ | |
1978 | 0x00006b04, /* getpeername */ | |
465bc0f5 FC |
1979 | 0x0000ec80, /* lstat */ |
1980 | 0x0000ec80, /* stat */ | |
903fd87c NC |
1981 | 0x00006c84, /* ftrread */ |
1982 | 0x00006c84, /* ftrwrite */ | |
1983 | 0x00006c84, /* ftrexec */ | |
1984 | 0x00006c84, /* fteread */ | |
1985 | 0x00006c84, /* ftewrite */ | |
1986 | 0x00006c84, /* fteexec */ | |
1987 | 0x00006c84, /* ftis */ | |
1988 | 0x00006c8c, /* ftsize */ | |
1989 | 0x00006c8c, /* ftmtime */ | |
1990 | 0x00006c8c, /* ftatime */ | |
1991 | 0x00006c8c, /* ftctime */ | |
1992 | 0x00006c84, /* ftrowned */ | |
1993 | 0x00006c84, /* fteowned */ | |
1994 | 0x00006c84, /* ftzero */ | |
1995 | 0x00006c84, /* ftsock */ | |
1996 | 0x00006c84, /* ftchr */ | |
1997 | 0x00006c84, /* ftblk */ | |
1998 | 0x00006c84, /* ftfile */ | |
1999 | 0x00006c84, /* ftdir */ | |
2000 | 0x00006c84, /* ftpipe */ | |
2001 | 0x00006c84, /* ftsuid */ | |
2002 | 0x00006c84, /* ftsgid */ | |
2003 | 0x00006c84, /* ftsvtx */ | |
2004 | 0x00006c84, /* ftlink */ | |
2005 | 0x00006c04, /* fttty */ | |
2006 | 0x00006c84, /* fttext */ | |
2007 | 0x00006c84, /* ftbinary */ | |
2008 | 0x00009b1c, /* chdir */ | |
2009 | 0x0000241d, /* chown */ | |
2010 | 0x00009b9c, /* chroot */ | |
2011 | 0x0000249d, /* unlink */ | |
2012 | 0x0000241d, /* chmod */ | |
2013 | 0x0000241d, /* utime */ | |
2014 | 0x0001141c, /* rename */ | |
2015 | 0x0001141c, /* link */ | |
2016 | 0x0001141c, /* symlink */ | |
2017 | 0x00009b8c, /* readlink */ | |
2018 | 0x0009949c, /* mkdir */ | |
2019 | 0x00009b9c, /* rmdir */ | |
2020 | 0x00016404, /* open_dir */ | |
2021 | 0x00006b00, /* readdir */ | |
2022 | 0x00006b0c, /* telldir */ | |
2023 | 0x00016404, /* seekdir */ | |
2024 | 0x00006b04, /* rewinddir */ | |
2025 | 0x00006b04, /* closedir */ | |
2026 | 0x0000000c, /* fork */ | |
2027 | 0x0000001c, /* wait */ | |
2028 | 0x0001141c, /* waitpid */ | |
2029 | 0x0002941d, /* system */ | |
2030 | 0x0002945d, /* exec */ | |
2031 | 0x0000245d, /* kill */ | |
2032 | 0x0000001c, /* getppid */ | |
2033 | 0x00009b1c, /* getpgrp */ | |
2034 | 0x0009941c, /* setpgrp */ | |
2035 | 0x0001141c, /* getpriority */ | |
2036 | 0x0011141c, /* setpriority */ | |
2037 | 0x0000001c, /* time */ | |
79072805 | 2038 | 0x00000000, /* tms */ |
903fd87c NC |
2039 | 0x00009b08, /* localtime */ |
2040 | 0x00009b08, /* gmtime */ | |
2041 | 0x00009b8c, /* alarm */ | |
2042 | 0x00009b1c, /* sleep */ | |
2043 | 0x0011140d, /* shmget */ | |
2044 | 0x0011140d, /* shmctl */ | |
2045 | 0x0111140d, /* shmread */ | |
2046 | 0x0111140d, /* shmwrite */ | |
2047 | 0x0001140d, /* msgget */ | |
2048 | 0x0011140d, /* msgctl */ | |
2049 | 0x0011140d, /* msgsnd */ | |
2050 | 0x1111140d, /* msgrcv */ | |
2051 | 0x0001140d, /* semop */ | |
2052 | 0x0011140d, /* semget */ | |
2053 | 0x0111140d, /* semctl */ | |
2054 | 0x00009bc0, /* require */ | |
2055 | 0x00001140, /* dofile */ | |
2056 | 0x00000604, /* hintseval */ | |
7d789282 | 2057 | 0x00009bc0, /* entereval */ |
903fd87c | 2058 | 0x00001100, /* leaveeval */ |
a4256772 | 2059 | 0x00000340, /* entertry */ |
903fd87c NC |
2060 | 0x00000400, /* leavetry */ |
2061 | 0x00001b00, /* ghbyname */ | |
2062 | 0x00011400, /* ghbyaddr */ | |
79072805 | 2063 | 0x00000000, /* ghostent */ |
903fd87c NC |
2064 | 0x00001b00, /* gnbyname */ |
2065 | 0x00011400, /* gnbyaddr */ | |
79072805 | 2066 | 0x00000000, /* gnetent */ |
903fd87c NC |
2067 | 0x00001b00, /* gpbyname */ |
2068 | 0x00001400, /* gpbynumber */ | |
79072805 | 2069 | 0x00000000, /* gprotoent */ |
903fd87c NC |
2070 | 0x00011400, /* gsbyname */ |
2071 | 0x00011400, /* gsbyport */ | |
79072805 | 2072 | 0x00000000, /* gservent */ |
903fd87c NC |
2073 | 0x00001b04, /* shostent */ |
2074 | 0x00001b04, /* snetent */ | |
2075 | 0x00001b04, /* sprotoent */ | |
2076 | 0x00001b04, /* sservent */ | |
2077 | 0x00000004, /* ehostent */ | |
2078 | 0x00000004, /* enetent */ | |
2079 | 0x00000004, /* eprotoent */ | |
2080 | 0x00000004, /* eservent */ | |
2081 | 0x00001b00, /* gpwnam */ | |
2082 | 0x00001b00, /* gpwuid */ | |
79072805 | 2083 | 0x00000000, /* gpwent */ |
903fd87c NC |
2084 | 0x00000004, /* spwent */ |
2085 | 0x00000004, /* epwent */ | |
2086 | 0x00001b00, /* ggrnam */ | |
2087 | 0x00001b00, /* ggrgid */ | |
79072805 | 2088 | 0x00000000, /* ggrent */ |
903fd87c NC |
2089 | 0x00000004, /* sgrent */ |
2090 | 0x00000004, /* egrent */ | |
79072805 | 2091 | 0x0000000c, /* getlogin */ |
903fd87c NC |
2092 | 0x0002140d, /* syscall */ |
2093 | 0x00007b04, /* lock */ | |
2094 | 0x00000300, /* once */ | |
438c221d | 2095 | 0x00000000, /* custom */ |
cba5a3b0 DG |
2096 | 0x00001b00, /* reach */ |
2097 | 0x00001b08, /* rkeys */ | |
2098 | 0x00001b08, /* rvalues */ | |
deb8a388 | 2099 | 0x00000600, /* coreargs */ |
84ed0108 | 2100 | 0x00000004, /* runcv */ |
838f2281 | 2101 | 0x00009b8e, /* fc */ |
ac217057 | 2102 | 0x00000040, /* padcv */ |
ecf9c8b7 | 2103 | 0x00000040, /* introcv */ |
13f89586 | 2104 | 0x00000040, /* clonecv */ |
a7fd8ef6 | 2105 | 0x00000040, /* padrange */ |
79072805 LW |
2106 | }; |
2107 | #endif | |
73c4f7a1 | 2108 | |
bae1192d JH |
2109 | #endif /* !PERL_GLOBAL_STRUCT_INIT */ |
2110 | ||
73c4f7a1 | 2111 | END_EXTERN_C |
27da23d5 | 2112 | |
f3574cc6 DM |
2113 | |
2114 | #define OPpARG1_MASK 0x01 | |
2115 | #define OPpCOREARGS_DEREF1 0x01 | |
2116 | #define OPpENTERSUB_INARGS 0x01 | |
2117 | #define OPpSORT_NUMERIC 0x01 | |
2118 | #define OPpTRANS_FROM_UTF 0x01 | |
2119 | #define OPpCONST_NOVER 0x02 | |
2120 | #define OPpCOREARGS_DEREF2 0x02 | |
2121 | #define OPpEVAL_HAS_HH 0x02 | |
2122 | #define OPpFT_ACCESS 0x02 | |
2123 | #define OPpGREP_LEX 0x02 | |
2124 | #define OPpHINT_STRICT_REFS 0x02 | |
2125 | #define OPpSORT_INTEGER 0x02 | |
2126 | #define OPpTRANS_TO_UTF 0x02 | |
2127 | #define OPpARG2_MASK 0x03 | |
2128 | #define OPpCONST_SHORTCIRCUIT 0x04 | |
2129 | #define OPpDONT_INIT_GV 0x04 | |
2130 | #define OPpENTERSUB_HASTARG 0x04 | |
2131 | #define OPpEVAL_UNICODE 0x04 | |
2132 | #define OPpFT_STACKED 0x04 | |
2133 | #define OPpITER_REVERSED 0x04 | |
2134 | #define OPpSLICEWARNING 0x04 | |
2135 | #define OPpSORT_REVERSE 0x04 | |
2136 | #define OPpTRANS_IDENTICAL 0x04 | |
2137 | #define OPpARG3_MASK 0x07 | |
2138 | #define OPpPADRANGE_COUNTSHIFT 0x07 | |
2139 | #define OPpCONST_STRICT 0x08 | |
2140 | #define OPpENTERSUB_AMPER 0x08 | |
2141 | #define OPpEVAL_BYTES 0x08 | |
2142 | #define OPpFT_STACKING 0x08 | |
2143 | #define OPpITER_DEF 0x08 | |
2144 | #define OPpMAYBE_LVSUB 0x08 | |
2145 | #define OPpREVERSE_INPLACE 0x08 | |
2146 | #define OPpSORT_INPLACE 0x08 | |
2147 | #define OPpTRANS_SQUASH 0x08 | |
2148 | #define OPpARG4_MASK 0x0f | |
2149 | #define OPpALLOW_FAKE 0x10 | |
2150 | #define OPpCONST_ENTERED 0x10 | |
2151 | #define OPpENTERSUB_DB 0x10 | |
2152 | #define OPpEVAL_COPHH 0x10 | |
2153 | #define OPpFT_AFTER_t 0x10 | |
2154 | #define OPpLVAL_DEFER 0x10 | |
2155 | #define OPpOPEN_IN_RAW 0x10 | |
2156 | #define OPpOUR_INTRO 0x10 | |
2157 | #define OPpPAD_STATE 0x10 | |
2158 | #define OPpSORT_DESCEND 0x10 | |
2159 | #define OPpSUBSTR_REPL_FIRST 0x10 | |
2160 | #define OPpTARGET_MY 0x10 | |
2161 | #define OPpDEREF_AV 0x20 | |
2162 | #define OPpEARLY_CV 0x20 | |
2163 | #define OPpEVAL_RE_REPARSING 0x20 | |
2164 | #define OPpHUSH_VMSISH 0x20 | |
2165 | #define OPpOPEN_IN_CRLF 0x20 | |
2166 | #define OPpSORT_QSORT 0x20 | |
2167 | #define OPpTRANS_COMPLEMENT 0x20 | |
2168 | #define OPpTRUEBOOL 0x20 | |
2169 | #define OPpASSIGN_BACKWARDS 0x40 | |
2170 | #define OPpASSIGN_COMMON 0x40 | |
2171 | #define OPpCONST_BARE 0x40 | |
2172 | #define OPpCOREARGS_SCALARMOD 0x40 | |
2173 | #define OPpDEREF_HV 0x40 | |
2174 | #define OPpEXISTS_SUB 0x40 | |
2175 | #define OPpFLIP_LINENUM 0x40 | |
2176 | #define OPpHINT_M_VMSISH_STATUS 0x40 | |
2177 | #define OPpLIST_GUESSED 0x40 | |
2178 | #define OPpMAYBE_TRUEBOOL 0x40 | |
2179 | #define OPpMAY_RETURN_CONSTANT 0x40 | |
2180 | #define OPpOPEN_OUT_RAW 0x40 | |
2181 | #define OPpREFCOUNTED 0x40 | |
2182 | #define OPpREPEAT_DOLIST 0x40 | |
2183 | #define OPpRUNTIME 0x40 | |
2184 | #define OPpSLICE 0x40 | |
2185 | #define OPpSORT_STABLE 0x40 | |
2186 | #define OPpTRANS_GROWS 0x40 | |
2187 | #define OPpDEREF 0x60 | |
2188 | #define OPpDEREF_SV 0x60 | |
2189 | #define OPpPADRANGE_COUNTMASK 0x7f | |
2190 | #define OPpASSIGN_CV_TO_GV 0x80 | |
2191 | #define OPpCOREARGS_PUSHMARK 0x80 | |
2192 | #define OPpENTERSUB_NOPAREN 0x80 | |
2193 | #define OPpHINT_M_VMSISH_TIME 0x80 | |
2194 | #define OPpLVALUE 0x80 | |
2195 | #define OPpLVAL_INTRO 0x80 | |
2196 | #define OPpOFFBYONE 0x80 | |
2197 | #define OPpOPEN_OUT_CRLF 0x80 | |
2198 | #define OPpPV_IS_UTF8 0x80 | |
2199 | #define OPpSPLIT_IMPLIM 0x80 | |
2200 | #define OPpTRANS_DELETE 0x80 | |
2201 | START_EXTERN_C | |
2202 | ||
2203 | #ifndef PERL_GLOBAL_STRUCT_INIT | |
2204 | ||
2205 | # ifndef DOINIT | |
2206 | ||
2207 | /* data about the flags in op_private */ | |
2208 | ||
2209 | EXTCONST I16 PL_op_private_bitdef_ix[]; | |
2210 | EXTCONST U16 PL_op_private_bitdefs[]; | |
2211 | EXTCONST char PL_op_private_labels[]; | |
2212 | EXTCONST I16 PL_op_private_bitfields[]; | |
2213 | EXTCONST U8 PL_op_private_valid[]; | |
2214 | ||
2215 | # else | |
2216 | ||
2217 | ||
2218 | /* PL_op_private_labels[]: the short descriptions of private flags. | |
2219 | * All labels are concatenated into a single char array | |
2220 | * (separated by \0's) for compactness. | |
2221 | */ | |
2222 | ||
2223 | EXTCONST char PL_op_private_labels[] = { | |
2224 | '$','M','O','D','\0', | |
2225 | '+','1','\0', | |
2226 | '-','\0', | |
2227 | '<','U','T','F','\0', | |
2228 | '>','U','T','F','\0', | |
2229 | 'A','M','P','E','R','\0', | |
2230 | 'B','A','R','E','\0', | |
2231 | 'B','K','W','A','R','D','\0', | |
2232 | 'B','O','O','L','\0', | |
2233 | 'B','O','O','L','?','\0', | |
2234 | 'B','Y','T','E','S','\0', | |
2235 | 'C','O','M','M','O','N','\0', | |
2236 | 'C','O','M','P','L','\0', | |
2237 | 'C','O','N','S','T','\0', | |
2238 | 'C','O','P','H','H','\0', | |
2239 | 'C','V','2','G','V','\0', | |
2240 | 'D','B','G','\0', | |
c486bd5c | 2241 | 'D','E','F','\0', |
f3574cc6 DM |
2242 | 'D','E','L','\0', |
2243 | 'D','E','R','E','F','1','\0', | |
2244 | 'D','E','R','E','F','2','\0', | |
2245 | 'D','E','S','C','\0', | |
2246 | 'D','O','L','I','S','T','\0', | |
2247 | 'D','R','E','F','A','V','\0', | |
2248 | 'D','R','E','F','H','V','\0', | |
2249 | 'D','R','E','F','S','V','\0', | |
2250 | 'E','A','R','L','Y','C','V','\0', | |
2251 | 'E','N','T','E','R','E','D','\0', | |
2252 | 'F','A','K','E','\0', | |
2253 | 'F','T','A','C','C','E','S','S','\0', | |
2254 | 'F','T','A','F','T','E','R','t','\0', | |
2255 | 'F','T','S','T','A','C','K','E','D','\0', | |
2256 | 'F','T','S','T','A','C','K','I','N','G','\0', | |
2257 | 'G','R','E','P','L','E','X','\0', | |
2258 | 'G','R','O','W','S','\0', | |
2259 | 'G','U','E','S','S','E','D','\0', | |
2260 | 'H','A','S','_','H','H','\0', | |
2261 | 'H','U','S','H','\0', | |
2262 | 'I','D','E','N','T','\0', | |
2263 | 'I','M','P','L','I','M','\0', | |
2264 | 'I','N','A','R','G','S','\0', | |
2265 | 'I','N','B','I','N','\0', | |
2266 | 'I','N','C','R','\0', | |
2267 | 'I','N','P','L','A','C','E','\0', | |
2268 | 'I','N','T','\0', | |
2269 | 'L','I','N','E','N','U','M','\0', | |
2270 | 'L','V','\0', | |
2271 | 'L','V','D','E','F','E','R','\0', | |
2272 | 'L','V','I','N','T','R','O','\0', | |
2273 | 'L','V','S','U','B','\0', | |
2274 | 'M','A','R','K','\0', | |
2275 | 'N','O','(',')','\0', | |
2276 | 'N','O','I','N','I','T','\0', | |
2277 | 'N','O','V','E','R','\0', | |
2278 | 'N','U','M','\0', | |
2279 | 'O','U','R','I','N','T','R','\0', | |
2280 | 'O','U','T','B','I','N','\0', | |
2281 | 'O','U','T','C','R','\0', | |
2282 | 'Q','S','O','R','T','\0', | |
2283 | 'R','E','F','C','\0', | |
c486bd5c | 2284 | 'R','E','P','A','R','S','E','\0', |
f3574cc6 DM |
2285 | 'R','E','P','L','1','S','T','\0', |
2286 | 'R','E','V','\0', | |
2287 | 'R','E','V','E','R','S','E','D','\0', | |
2288 | 'R','T','I','M','E','\0', | |
2289 | 'S','H','O','R','T','\0', | |
2290 | 'S','L','I','C','E','\0', | |
2291 | 'S','L','I','C','E','W','A','R','N','\0', | |
2292 | 'S','Q','U','A','S','H','\0', | |
2293 | 'S','T','A','B','L','E','\0', | |
2294 | 'S','T','A','T','E','\0', | |
2295 | 'S','T','R','I','C','T','\0', | |
2296 | 'S','U','B','\0', | |
2297 | 'T','A','R','G','\0', | |
2298 | 'T','A','R','G','M','Y','\0', | |
2299 | 'U','N','I','\0', | |
2300 | 'U','T','F','\0', | |
2301 | 'V','M','S','I','S','H','_','S','T','A','T','U','S','\0', | |
2302 | 'V','M','S','I','S','H','_','T','I','M','E','\0', | |
2303 | ||
2304 | }; | |
2305 | ||
2306 | ||
2307 | ||
2308 | /* PL_op_private_bitfields[]: details about each bit field type. | |
2309 | * Each defintition consists of the following list of words: | |
2310 | * bitmin | |
2311 | * label (index into PL_op_private_labels[]; -1 if no label) | |
2312 | * repeat for each enum entry (if any): | |
2313 | * enum value | |
2314 | * enum label (index into PL_op_private_labels[]) | |
2315 | * -1 | |
2316 | */ | |
2317 | ||
2318 | EXTCONST I16 PL_op_private_bitfields[] = { | |
2319 | 0, 8, -1, | |
2320 | 0, 8, -1, | |
2321 | 0, 8, -1, | |
2322 | 0, 8, -1, | |
2323 | 0, 8, -1, | |
2324 | 0, 8, -1, | |
c486bd5c | 2325 | 5, -1, 1, 124, 2, 131, 3, 138, -1, |
f3574cc6 DM |
2326 | |
2327 | }; | |
2328 | ||
2329 | ||
2330 | /* PL_op_private_bitdef_ix[]: map an op number to a starting position | |
2331 | * in PL_op_private_bitdefs. If -1, the op has no bits defined */ | |
2332 | ||
2333 | EXTCONST I16 PL_op_private_bitdef_ix[] = { | |
2334 | -1, /* null */ | |
2335 | -1, /* stub */ | |
2336 | 0, /* scalar */ | |
2337 | 1, /* pushmark */ | |
2338 | 3, /* wantarray */ | |
2339 | 4, /* const */ | |
2340 | 9, /* gvsv */ | |
2341 | 11, /* gv */ | |
2342 | 12, /* gelem */ | |
2343 | 13, /* padsv */ | |
2344 | 16, /* padav */ | |
2345 | 20, /* padhv */ | |
2346 | -1, /* padany */ | |
2347 | 26, /* pushre */ | |
2348 | 27, /* rv2gv */ | |
2349 | 34, /* rv2sv */ | |
2350 | 39, /* av2arylen */ | |
2351 | 41, /* rv2cv */ | |
2352 | -1, /* anoncode */ | |
2353 | 48, /* prototype */ | |
2354 | 49, /* refgen */ | |
2355 | 50, /* srefgen */ | |
2356 | 51, /* ref */ | |
2357 | 52, /* bless */ | |
2358 | 53, /* backtick */ | |
2359 | 58, /* glob */ | |
2360 | 59, /* readline */ | |
2361 | -1, /* rcatline */ | |
2362 | 60, /* regcmaybe */ | |
2363 | 61, /* regcreset */ | |
2364 | 62, /* regcomp */ | |
2365 | 63, /* match */ | |
2366 | 65, /* qr */ | |
2367 | 66, /* subst */ | |
2368 | 68, /* substcont */ | |
2369 | 70, /* trans */ | |
2370 | 78, /* transr */ | |
2371 | 86, /* sassign */ | |
2372 | 89, /* aassign */ | |
2373 | 92, /* chop */ | |
2374 | 93, /* schop */ | |
2375 | 94, /* chomp */ | |
2376 | 96, /* schomp */ | |
2377 | 98, /* defined */ | |
2378 | 99, /* undef */ | |
2379 | 100, /* study */ | |
2380 | 101, /* pos */ | |
2381 | 104, /* preinc */ | |
2382 | 105, /* i_preinc */ | |
2383 | 106, /* predec */ | |
2384 | 107, /* i_predec */ | |
2385 | 108, /* postinc */ | |
2386 | 109, /* i_postinc */ | |
2387 | 111, /* postdec */ | |
2388 | 112, /* i_postdec */ | |
2389 | 114, /* pow */ | |
2390 | 116, /* multiply */ | |
2391 | 118, /* i_multiply */ | |
2392 | 120, /* divide */ | |
2393 | 122, /* i_divide */ | |
2394 | 124, /* modulo */ | |
2395 | 126, /* i_modulo */ | |
2396 | 128, /* repeat */ | |
2397 | 130, /* add */ | |
2398 | 132, /* i_add */ | |
2399 | 134, /* subtract */ | |
2400 | 136, /* i_subtract */ | |
2401 | 138, /* concat */ | |
2402 | 140, /* stringify */ | |
2403 | 142, /* left_shift */ | |
2404 | 144, /* right_shift */ | |
2405 | 146, /* lt */ | |
2406 | 147, /* i_lt */ | |
2407 | 148, /* gt */ | |
2408 | 149, /* i_gt */ | |
2409 | 150, /* le */ | |
2410 | 151, /* i_le */ | |
2411 | 152, /* ge */ | |
2412 | 153, /* i_ge */ | |
2413 | 154, /* eq */ | |
2414 | 155, /* i_eq */ | |
2415 | 156, /* ne */ | |
2416 | 157, /* i_ne */ | |
2417 | 158, /* ncmp */ | |
2418 | 159, /* i_ncmp */ | |
2419 | 160, /* slt */ | |
2420 | 161, /* sgt */ | |
2421 | 162, /* sle */ | |
2422 | 163, /* sge */ | |
2423 | 164, /* seq */ | |
2424 | 165, /* sne */ | |
2425 | 166, /* scmp */ | |
2426 | 167, /* bit_and */ | |
2427 | 168, /* bit_xor */ | |
2428 | 169, /* bit_or */ | |
2429 | 170, /* negate */ | |
2430 | 171, /* i_negate */ | |
2431 | 173, /* not */ | |
2432 | 174, /* complement */ | |
2433 | 175, /* smartmatch */ | |
2434 | 176, /* atan2 */ | |
2435 | 178, /* sin */ | |
2436 | 180, /* cos */ | |
2437 | 182, /* rand */ | |
2438 | 184, /* srand */ | |
2439 | 186, /* exp */ | |
2440 | 188, /* log */ | |
2441 | 190, /* sqrt */ | |
2442 | 192, /* int */ | |
2443 | 194, /* hex */ | |
2444 | 196, /* oct */ | |
2445 | 198, /* abs */ | |
2446 | 200, /* length */ | |
2447 | 202, /* substr */ | |
2448 | 206, /* vec */ | |
2449 | 209, /* index */ | |
2450 | 211, /* rindex */ | |
2451 | 213, /* sprintf */ | |
2452 | 214, /* formline */ | |
2453 | 215, /* ord */ | |
2454 | 217, /* chr */ | |
2455 | 219, /* crypt */ | |
2456 | 221, /* ucfirst */ | |
2457 | 222, /* lcfirst */ | |
2458 | 223, /* uc */ | |
2459 | 224, /* lc */ | |
2460 | 225, /* quotemeta */ | |
2461 | 226, /* rv2av */ | |
2462 | 232, /* aelemfast */ | |
2463 | 233, /* aelemfast_lex */ | |
2464 | 234, /* aelem */ | |
2465 | 239, /* aslice */ | |
2466 | 242, /* kvaslice */ | |
2467 | 243, /* aeach */ | |
2468 | 244, /* akeys */ | |
2469 | 245, /* avalues */ | |
2470 | 246, /* each */ | |
2471 | 247, /* values */ | |
2472 | 248, /* keys */ | |
2473 | 250, /* delete */ | |
2474 | 253, /* exists */ | |
2475 | 255, /* rv2hv */ | |
2476 | 263, /* helem */ | |
2477 | 268, /* hslice */ | |
2478 | 271, /* kvhslice */ | |
2479 | 272, /* unpack */ | |
2480 | 273, /* pack */ | |
2481 | 274, /* split */ | |
2482 | 275, /* join */ | |
2483 | 276, /* list */ | |
2484 | 278, /* lslice */ | |
2485 | 279, /* anonlist */ | |
2486 | 280, /* anonhash */ | |
2487 | 281, /* splice */ | |
2488 | 282, /* push */ | |
2489 | 284, /* pop */ | |
2490 | 285, /* shift */ | |
2491 | 286, /* unshift */ | |
2492 | 288, /* sort */ | |
2493 | 295, /* reverse */ | |
2494 | 297, /* grepstart */ | |
2495 | 298, /* grepwhile */ | |
2496 | 300, /* mapstart */ | |
2497 | 301, /* mapwhile */ | |
2498 | 303, /* range */ | |
2499 | 304, /* flip */ | |
2500 | 306, /* flop */ | |
2501 | 308, /* and */ | |
2502 | 309, /* or */ | |
2503 | 310, /* xor */ | |
2504 | 311, /* dor */ | |
2505 | 312, /* cond_expr */ | |
2506 | 314, /* andassign */ | |
2507 | 315, /* orassign */ | |
2508 | 316, /* dorassign */ | |
2509 | 317, /* method */ | |
2510 | 318, /* entersub */ | |
2511 | 325, /* leavesub */ | |
2512 | 327, /* leavesublv */ | |
2513 | 329, /* caller */ | |
2514 | 331, /* warn */ | |
2515 | 332, /* die */ | |
2516 | 333, /* reset */ | |
2517 | -1, /* lineseq */ | |
2518 | 334, /* nextstate */ | |
2519 | 337, /* dbstate */ | |
2520 | -1, /* unstack */ | |
2521 | -1, /* enter */ | |
2522 | 340, /* leave */ | |
2523 | -1, /* scope */ | |
2524 | 342, /* enteriter */ | |
2525 | 346, /* iter */ | |
2526 | -1, /* enterloop */ | |
2527 | 347, /* leaveloop */ | |
2528 | -1, /* return */ | |
2529 | 349, /* last */ | |
2530 | 351, /* next */ | |
2531 | 353, /* redo */ | |
2532 | 355, /* dump */ | |
2533 | 357, /* goto */ | |
2534 | 359, /* exit */ | |
2535 | -1, /* method_named */ | |
2536 | 360, /* entergiven */ | |
2537 | 361, /* leavegiven */ | |
2538 | 362, /* enterwhen */ | |
2539 | 363, /* leavewhen */ | |
2540 | -1, /* break */ | |
2541 | -1, /* continue */ | |
2542 | 364, /* open */ | |
2543 | 369, /* close */ | |
2544 | 370, /* pipe_op */ | |
2545 | 371, /* fileno */ | |
2546 | 372, /* umask */ | |
2547 | 373, /* binmode */ | |
2548 | 374, /* tie */ | |
2549 | 375, /* untie */ | |
2550 | 376, /* tied */ | |
2551 | 377, /* dbmopen */ | |
2552 | 378, /* dbmclose */ | |
2553 | 379, /* sselect */ | |
2554 | 380, /* select */ | |
2555 | 381, /* getc */ | |
2556 | 382, /* read */ | |
2557 | 383, /* enterwrite */ | |
2558 | 384, /* leavewrite */ | |
2559 | -1, /* prtf */ | |
2560 | -1, /* print */ | |
2561 | -1, /* say */ | |
2562 | 386, /* sysopen */ | |
2563 | 387, /* sysseek */ | |
2564 | 388, /* sysread */ | |
2565 | 389, /* syswrite */ | |
2566 | 390, /* eof */ | |
2567 | 391, /* tell */ | |
2568 | 392, /* seek */ | |
2569 | 393, /* truncate */ | |
2570 | 394, /* fcntl */ | |
2571 | 395, /* ioctl */ | |
2572 | 396, /* flock */ | |
2573 | 398, /* send */ | |
2574 | 399, /* recv */ | |
2575 | 400, /* socket */ | |
2576 | 401, /* sockpair */ | |
2577 | 402, /* bind */ | |
2578 | 403, /* connect */ | |
2579 | 404, /* listen */ | |
2580 | 405, /* accept */ | |
2581 | 406, /* shutdown */ | |
2582 | 407, /* gsockopt */ | |
2583 | 408, /* ssockopt */ | |
2584 | 409, /* getsockname */ | |
2585 | 410, /* getpeername */ | |
2586 | 411, /* lstat */ | |
2587 | 412, /* stat */ | |
2588 | 413, /* ftrread */ | |
2589 | 418, /* ftrwrite */ | |
2590 | 423, /* ftrexec */ | |
2591 | 428, /* fteread */ | |
2592 | 433, /* ftewrite */ | |
2593 | 438, /* fteexec */ | |
2594 | 443, /* ftis */ | |
2595 | 447, /* ftsize */ | |
2596 | 451, /* ftmtime */ | |
2597 | 455, /* ftatime */ | |
2598 | 459, /* ftctime */ | |
2599 | 463, /* ftrowned */ | |
2600 | 467, /* fteowned */ | |
2601 | 471, /* ftzero */ | |
2602 | 475, /* ftsock */ | |
2603 | 479, /* ftchr */ | |
2604 | 483, /* ftblk */ | |
2605 | 487, /* ftfile */ | |
2606 | 491, /* ftdir */ | |
2607 | 495, /* ftpipe */ | |
2608 | 499, /* ftsuid */ | |
2609 | 503, /* ftsgid */ | |
2610 | 507, /* ftsvtx */ | |
2611 | 511, /* ftlink */ | |
2612 | 515, /* fttty */ | |
2613 | 519, /* fttext */ | |
2614 | 523, /* ftbinary */ | |
2615 | 527, /* chdir */ | |
2616 | 529, /* chown */ | |
2617 | 531, /* chroot */ | |
2618 | 533, /* unlink */ | |
2619 | 535, /* chmod */ | |
2620 | 537, /* utime */ | |
2621 | 539, /* rename */ | |
2622 | 541, /* link */ | |
2623 | 543, /* symlink */ | |
2624 | 545, /* readlink */ | |
2625 | 546, /* mkdir */ | |
2626 | 548, /* rmdir */ | |
2627 | 550, /* open_dir */ | |
2628 | 551, /* readdir */ | |
2629 | 552, /* telldir */ | |
2630 | 553, /* seekdir */ | |
2631 | 554, /* rewinddir */ | |
2632 | 555, /* closedir */ | |
2633 | -1, /* fork */ | |
2634 | 556, /* wait */ | |
2635 | 557, /* waitpid */ | |
2636 | 559, /* system */ | |
2637 | 561, /* exec */ | |
2638 | 563, /* kill */ | |
2639 | 565, /* getppid */ | |
2640 | 566, /* getpgrp */ | |
2641 | 568, /* setpgrp */ | |
2642 | 570, /* getpriority */ | |
2643 | 572, /* setpriority */ | |
2644 | 574, /* time */ | |
2645 | -1, /* tms */ | |
2646 | 575, /* localtime */ | |
2647 | 576, /* gmtime */ | |
2648 | 577, /* alarm */ | |
2649 | 578, /* sleep */ | |
2650 | 580, /* shmget */ | |
2651 | 581, /* shmctl */ | |
2652 | 582, /* shmread */ | |
2653 | 583, /* shmwrite */ | |
2654 | 584, /* msgget */ | |
2655 | 585, /* msgctl */ | |
2656 | 586, /* msgsnd */ | |
2657 | 587, /* msgrcv */ | |
2658 | 588, /* semop */ | |
2659 | 589, /* semget */ | |
2660 | 590, /* semctl */ | |
2661 | 591, /* require */ | |
2662 | 592, /* dofile */ | |
2663 | -1, /* hintseval */ | |
2664 | 593, /* entereval */ | |
2665 | 599, /* leaveeval */ | |
2666 | 601, /* entertry */ | |
2667 | -1, /* leavetry */ | |
2668 | 602, /* ghbyname */ | |
2669 | 603, /* ghbyaddr */ | |
2670 | -1, /* ghostent */ | |
2671 | 604, /* gnbyname */ | |
2672 | 605, /* gnbyaddr */ | |
2673 | -1, /* gnetent */ | |
2674 | 606, /* gpbyname */ | |
2675 | 607, /* gpbynumber */ | |
2676 | -1, /* gprotoent */ | |
2677 | 608, /* gsbyname */ | |
2678 | 609, /* gsbyport */ | |
2679 | -1, /* gservent */ | |
2680 | 610, /* shostent */ | |
2681 | 611, /* snetent */ | |
2682 | 612, /* sprotoent */ | |
2683 | 613, /* sservent */ | |
2684 | -1, /* ehostent */ | |
2685 | -1, /* enetent */ | |
2686 | -1, /* eprotoent */ | |
2687 | -1, /* eservent */ | |
2688 | 614, /* gpwnam */ | |
2689 | 615, /* gpwuid */ | |
2690 | -1, /* gpwent */ | |
2691 | -1, /* spwent */ | |
2692 | -1, /* epwent */ | |
2693 | 616, /* ggrnam */ | |
2694 | 617, /* ggrgid */ | |
2695 | -1, /* ggrent */ | |
2696 | -1, /* sgrent */ | |
2697 | -1, /* egrent */ | |
2698 | -1, /* getlogin */ | |
2699 | 618, /* syscall */ | |
2700 | 619, /* lock */ | |
2701 | 620, /* once */ | |
2702 | -1, /* custom */ | |
2703 | 621, /* reach */ | |
2704 | 622, /* rkeys */ | |
2705 | 624, /* rvalues */ | |
2706 | 625, /* coreargs */ | |
2707 | 629, /* runcv */ | |
2708 | 630, /* fc */ | |
2709 | -1, /* padcv */ | |
2710 | -1, /* introcv */ | |
2711 | -1, /* clonecv */ | |
2712 | 631, /* padrange */ | |
2713 | ||
2714 | }; | |
2715 | ||
2716 | ||
2717 | ||
2718 | /* PL_op_private_bitdefs[]: given a starting position in this array (as | |
2719 | * supplied by PL_op_private_bitdef_ix[]), each word (until a stop bit is | |
2720 | * seen) defines the meaning of a particular op_private bit for a | |
2721 | * particular op. Each word consists of: | |
2722 | * bit 0: stop bit: this is the last bit def for the current op | |
2723 | * bit 1: bitfield: if set, this defines a bit field rather than a flag | |
2724 | * bits 2..4: unsigned number in the range 0..7 which is the bit number | |
2725 | * bits 5..15: unsigned number in the range 0..2047 which is an index | |
2726 | * into PL_op_private_labels[] (for a flag), or | |
2727 | * into PL_op_private_bitfields[] (for a bit field) | |
2728 | */ | |
2729 | ||
2730 | EXTCONST U16 PL_op_private_bitdefs[] = { | |
2731 | /* scalar */ 0x0003, | |
c486bd5c | 2732 | /* pushmark */ 0x25bc, 0x37b1, |
f3574cc6 | 2733 | /* wantarray */ 0x00bd, |
c486bd5c DM |
2734 | /* const */ 0x0358, 0x1330, 0x386c, 0x3328, 0x2985, |
2735 | /* gvsv */ 0x25bc, 0x2ad1, | |
2736 | /* gv */ 0x1235, | |
f3574cc6 | 2737 | /* gelem */ 0x0067, |
c486bd5c DM |
2738 | /* padsv */ 0x25bc, 0x025a, 0x37b1, |
2739 | /* padav */ 0x25bc, 0x37b0, 0x26ac, 0x34a9, | |
2740 | /* padhv */ 0x25bc, 0x0578, 0x04d4, 0x37b0, 0x26ac, 0x34a9, | |
2741 | /* pushre */ 0x3279, | |
2742 | /* rv2gv */ 0x25bc, 0x025a, 0x1430, 0x26ac, 0x28a8, 0x3864, 0x0003, | |
2743 | /* rv2sv */ 0x25bc, 0x025a, 0x2ad0, 0x3864, 0x0003, | |
2744 | /* av2arylen */ 0x26ac, 0x0003, | |
2745 | /* rv2cv */ 0x281c, 0x0898, 0x0ad0, 0x028c, 0x39c8, 0x3864, 0x0003, | |
f3574cc6 DM |
2746 | /* prototype */ 0x0003, |
2747 | /* refgen */ 0x0003, | |
2748 | /* srefgen */ 0x0003, | |
2749 | /* ref */ 0x0003, | |
2750 | /* bless */ 0x012f, | |
c486bd5c | 2751 | /* backtick */ 0x2cbc, 0x2bd8, 0x2134, 0x2070, 0x0003, |
f3574cc6 DM |
2752 | /* glob */ 0x012f, |
2753 | /* readline */ 0x0003, | |
2754 | /* regcmaybe */ 0x0003, | |
2755 | /* regcreset */ 0x0003, | |
2756 | /* regcomp */ 0x0003, | |
c486bd5c DM |
2757 | /* match */ 0x3278, 0x3a71, |
2758 | /* qr */ 0x3279, | |
2759 | /* subst */ 0x3278, 0x3a71, | |
2760 | /* substcont */ 0x3278, 0x0003, | |
2761 | /* trans */ 0x0bdc, 0x1ab8, 0x07d4, 0x3a70, 0x35ec, 0x1de8, 0x01e4, 0x0141, | |
2762 | /* transr */ 0x0bdc, 0x1ab8, 0x07d4, 0x3a70, 0x35ec, 0x1de8, 0x01e4, 0x0141, | |
f3574cc6 | 2763 | /* sassign */ 0x0a1c, 0x03f8, 0x0067, |
c486bd5c | 2764 | /* aassign */ 0x06f8, 0x26ac, 0x0067, |
f3574cc6 DM |
2765 | /* chop */ 0x0003, |
2766 | /* schop */ 0x0003, | |
c486bd5c DM |
2767 | /* chomp */ 0x3a70, 0x0003, |
2768 | /* schomp */ 0x3a70, 0x0003, | |
f3574cc6 DM |
2769 | /* defined */ 0x0003, |
2770 | /* undef */ 0x0003, | |
2771 | /* study */ 0x0003, | |
c486bd5c | 2772 | /* pos */ 0x25bc, 0x26ac, 0x0003, |
f3574cc6 DM |
2773 | /* preinc */ 0x0003, |
2774 | /* i_preinc */ 0x0003, | |
2775 | /* predec */ 0x0003, | |
2776 | /* i_predec */ 0x0003, | |
2777 | /* postinc */ 0x0003, | |
c486bd5c | 2778 | /* i_postinc */ 0x3a70, 0x0003, |
f3574cc6 | 2779 | /* postdec */ 0x0003, |
c486bd5c DM |
2780 | /* i_postdec */ 0x3a70, 0x0003, |
2781 | /* pow */ 0x3a70, 0x0067, | |
2782 | /* multiply */ 0x3a70, 0x0067, | |
2783 | /* i_multiply */ 0x3a70, 0x0067, | |
2784 | /* divide */ 0x3a70, 0x0067, | |
2785 | /* i_divide */ 0x3a70, 0x0067, | |
2786 | /* modulo */ 0x3a70, 0x0067, | |
2787 | /* i_modulo */ 0x3a70, 0x0067, | |
2788 | /* repeat */ 0x0eb8, 0x0067, | |
2789 | /* add */ 0x3a70, 0x0067, | |
2790 | /* i_add */ 0x3a70, 0x0067, | |
2791 | /* subtract */ 0x3a70, 0x0067, | |
2792 | /* i_subtract */ 0x3a70, 0x0067, | |
2793 | /* concat */ 0x3a70, 0x0067, | |
2794 | /* stringify */ 0x3a70, 0x012f, | |
2795 | /* left_shift */ 0x3a70, 0x0067, | |
2796 | /* right_shift */ 0x3a70, 0x0067, | |
f3574cc6 DM |
2797 | /* lt */ 0x0067, |
2798 | /* i_lt */ 0x0067, | |
2799 | /* gt */ 0x0067, | |
2800 | /* i_gt */ 0x0067, | |
2801 | /* le */ 0x0067, | |
2802 | /* i_le */ 0x0067, | |
2803 | /* ge */ 0x0067, | |
2804 | /* i_ge */ 0x0067, | |
2805 | /* eq */ 0x0067, | |
2806 | /* i_eq */ 0x0067, | |
2807 | /* ne */ 0x0067, | |
2808 | /* i_ne */ 0x0067, | |
2809 | /* ncmp */ 0x0067, | |
2810 | /* i_ncmp */ 0x0067, | |
2811 | /* slt */ 0x0067, | |
2812 | /* sgt */ 0x0067, | |
2813 | /* sle */ 0x0067, | |
2814 | /* sge */ 0x0067, | |
2815 | /* seq */ 0x0067, | |
2816 | /* sne */ 0x0067, | |
2817 | /* scmp */ 0x0067, | |
2818 | /* bit_and */ 0x0067, | |
2819 | /* bit_xor */ 0x0067, | |
2820 | /* bit_or */ 0x0067, | |
2821 | /* negate */ 0x0003, | |
c486bd5c | 2822 | /* i_negate */ 0x3a70, 0x0003, |
f3574cc6 DM |
2823 | /* not */ 0x0003, |
2824 | /* complement */ 0x0003, | |
2825 | /* smartmatch */ 0x0067, | |
c486bd5c DM |
2826 | /* atan2 */ 0x3a70, 0x012f, |
2827 | /* sin */ 0x3a70, 0x0003, | |
2828 | /* cos */ 0x3a70, 0x0003, | |
2829 | /* rand */ 0x3a70, 0x012f, | |
2830 | /* srand */ 0x3a70, 0x012f, | |
2831 | /* exp */ 0x3a70, 0x0003, | |
2832 | /* log */ 0x3a70, 0x0003, | |
2833 | /* sqrt */ 0x3a70, 0x0003, | |
2834 | /* int */ 0x3a70, 0x0003, | |
2835 | /* hex */ 0x3a70, 0x0003, | |
2836 | /* oct */ 0x3a70, 0x0003, | |
2837 | /* abs */ 0x3a70, 0x0003, | |
2838 | /* length */ 0x3a70, 0x0003, | |
2839 | /* substr */ 0x25bc, 0x2fd0, 0x26ac, 0x00cb, | |
2840 | /* vec */ 0x25bc, 0x26ac, 0x0067, | |
2841 | /* index */ 0x3a70, 0x012f, | |
2842 | /* rindex */ 0x3a70, 0x012f, | |
f3574cc6 DM |
2843 | /* sprintf */ 0x012f, |
2844 | /* formline */ 0x012f, | |
c486bd5c DM |
2845 | /* ord */ 0x3a70, 0x0003, |
2846 | /* chr */ 0x3a70, 0x0003, | |
2847 | /* crypt */ 0x3a70, 0x012f, | |
f3574cc6 DM |
2848 | /* ucfirst */ 0x0003, |
2849 | /* lcfirst */ 0x0003, | |
2850 | /* uc */ 0x0003, | |
2851 | /* lc */ 0x0003, | |
2852 | /* quotemeta */ 0x0003, | |
c486bd5c | 2853 | /* rv2av */ 0x25bc, 0x2ad0, 0x26ac, 0x34a8, 0x3864, 0x0003, |
f3574cc6 DM |
2854 | /* aelemfast */ 0x01ff, |
2855 | /* aelemfast_lex */ 0x01ff, | |
c486bd5c DM |
2856 | /* aelem */ 0x25bc, 0x025a, 0x24b0, 0x26ac, 0x0067, |
2857 | /* aslice */ 0x25bc, 0x26ac, 0x34a9, | |
2858 | /* kvaslice */ 0x26ad, | |
f3574cc6 DM |
2859 | /* aeach */ 0x0003, |
2860 | /* akeys */ 0x0003, | |
2861 | /* avalues */ 0x0003, | |
2862 | /* each */ 0x0003, | |
2863 | /* values */ 0x0003, | |
c486bd5c DM |
2864 | /* keys */ 0x26ac, 0x0003, |
2865 | /* delete */ 0x25bc, 0x33f8, 0x0003, | |
2866 | /* exists */ 0x3958, 0x0003, | |
2867 | /* rv2hv */ 0x25bc, 0x0578, 0x04d4, 0x2ad0, 0x26ac, 0x34a8, 0x3864, 0x0003, | |
2868 | /* helem */ 0x25bc, 0x025a, 0x24b0, 0x26ac, 0x0067, | |
2869 | /* hslice */ 0x25bc, 0x26ac, 0x34a9, | |
2870 | /* kvhslice */ 0x26ad, | |
f3574cc6 DM |
2871 | /* unpack */ 0x012f, |
2872 | /* pack */ 0x012f, | |
c486bd5c | 2873 | /* split */ 0x1ebd, |
f3574cc6 | 2874 | /* join */ 0x012f, |
c486bd5c | 2875 | /* list */ 0x25bc, 0x1b79, |
f3574cc6 DM |
2876 | /* lslice */ 0x0067, |
2877 | /* anonlist */ 0x012f, | |
2878 | /* anonhash */ 0x012f, | |
2879 | /* splice */ 0x012f, | |
c486bd5c | 2880 | /* push */ 0x3a70, 0x012f, |
f3574cc6 DM |
2881 | /* pop */ 0x0003, |
2882 | /* shift */ 0x0003, | |
c486bd5c DM |
2883 | /* unshift */ 0x3a70, 0x012f, |
2884 | /* sort */ 0x36d8, 0x2d74, 0x0e10, 0x21cc, 0x30c8, 0x22c4, 0x2a41, | |
2885 | /* reverse */ 0x21cc, 0x0003, | |
2886 | /* grepstart */ 0x19a5, | |
2887 | /* grepwhile */ 0x19a4, 0x0003, | |
2888 | /* mapstart */ 0x19a5, | |
2889 | /* mapwhile */ 0x19a4, 0x0003, | |
f3574cc6 | 2890 | /* range */ 0x0003, |
c486bd5c DM |
2891 | /* flip */ 0x2358, 0x0003, |
2892 | /* flop */ 0x2358, 0x0003, | |
f3574cc6 DM |
2893 | /* and */ 0x0003, |
2894 | /* or */ 0x0003, | |
2895 | /* xor */ 0x0067, | |
2896 | /* dor */ 0x0003, | |
c486bd5c | 2897 | /* cond_expr */ 0x25bc, 0x0003, |
f3574cc6 DM |
2898 | /* andassign */ 0x0003, |
2899 | /* orassign */ 0x0003, | |
2900 | /* dorassign */ 0x0003, | |
2901 | /* method */ 0x0003, | |
c486bd5c DM |
2902 | /* entersub */ 0x25bc, 0x025a, 0x0ad0, 0x028c, 0x39c8, 0x3864, 0x1f81, |
2903 | /* leavesub */ 0x2e38, 0x0003, | |
2904 | /* leavesublv */ 0x2e38, 0x0003, | |
f3574cc6 DM |
2905 | /* caller */ 0x00bc, 0x012f, |
2906 | /* warn */ 0x012f, | |
2907 | /* die */ 0x012f, | |
2908 | /* reset */ 0x012f, | |
c486bd5c DM |
2909 | /* nextstate */ 0x3e1c, 0x3c58, 0x1d55, |
2910 | /* dbstate */ 0x3e1c, 0x3c58, 0x1d55, | |
2911 | /* leave */ 0x245c, 0x2e39, | |
2912 | /* enteriter */ 0x25bc, 0x2ad0, 0x0b4c, 0x3149, | |
2913 | /* iter */ 0x3149, | |
2914 | /* leaveloop */ 0x245c, 0x0067, | |
2915 | /* last */ 0x3bdc, 0x0003, | |
2916 | /* next */ 0x3bdc, 0x0003, | |
2917 | /* redo */ 0x3bdc, 0x0003, | |
2918 | /* dump */ 0x3bdc, 0x0003, | |
2919 | /* goto */ 0x3bdc, 0x0003, | |
f3574cc6 DM |
2920 | /* exit */ 0x012f, |
2921 | /* entergiven */ 0x0003, | |
2922 | /* leavegiven */ 0x0003, | |
2923 | /* enterwhen */ 0x0003, | |
2924 | /* leavewhen */ 0x0003, | |
c486bd5c | 2925 | /* open */ 0x2cbc, 0x2bd8, 0x2134, 0x2070, 0x012f, |
f3574cc6 DM |
2926 | /* close */ 0x012f, |
2927 | /* pipe_op */ 0x012f, | |
2928 | /* fileno */ 0x012f, | |
2929 | /* umask */ 0x012f, | |
2930 | /* binmode */ 0x012f, | |
2931 | /* tie */ 0x012f, | |
2932 | /* untie */ 0x0003, | |
2933 | /* tied */ 0x0003, | |
2934 | /* dbmopen */ 0x012f, | |
2935 | /* dbmclose */ 0x0003, | |
2936 | /* sselect */ 0x012f, | |
2937 | /* select */ 0x012f, | |
2938 | /* getc */ 0x012f, | |
2939 | /* read */ 0x012f, | |
2940 | /* enterwrite */ 0x012f, | |
c486bd5c | 2941 | /* leavewrite */ 0x2e38, 0x0003, |
f3574cc6 DM |
2942 | /* sysopen */ 0x012f, |
2943 | /* sysseek */ 0x012f, | |
2944 | /* sysread */ 0x012f, | |
2945 | /* syswrite */ 0x012f, | |
2946 | /* eof */ 0x012f, | |
2947 | /* tell */ 0x012f, | |
2948 | /* seek */ 0x012f, | |
2949 | /* truncate */ 0x012f, | |
2950 | /* fcntl */ 0x012f, | |
2951 | /* ioctl */ 0x012f, | |
c486bd5c | 2952 | /* flock */ 0x3a70, 0x012f, |
f3574cc6 DM |
2953 | /* send */ 0x012f, |
2954 | /* recv */ 0x012f, | |
2955 | /* socket */ 0x012f, | |
2956 | /* sockpair */ 0x012f, | |
2957 | /* bind */ 0x012f, | |
2958 | /* connect */ 0x012f, | |
2959 | /* listen */ 0x012f, | |
2960 | /* accept */ 0x012f, | |
2961 | /* shutdown */ 0x012f, | |
2962 | /* gsockopt */ 0x012f, | |
2963 | /* ssockopt */ 0x012f, | |
2964 | /* getsockname */ 0x0003, | |
2965 | /* getpeername */ 0x0003, | |
2966 | /* lstat */ 0x0003, | |
2967 | /* stat */ 0x0003, | |
c486bd5c DM |
2968 | /* ftrread */ 0x15f0, 0x184c, 0x1708, 0x14c4, 0x0003, |
2969 | /* ftrwrite */ 0x15f0, 0x184c, 0x1708, 0x14c4, 0x0003, | |
2970 | /* ftrexec */ 0x15f0, 0x184c, 0x1708, 0x14c4, 0x0003, | |
2971 | /* fteread */ 0x15f0, 0x184c, 0x1708, 0x14c4, 0x0003, | |
2972 | /* ftewrite */ 0x15f0, 0x184c, 0x1708, 0x14c4, 0x0003, | |
2973 | /* fteexec */ 0x15f0, 0x184c, 0x1708, 0x14c4, 0x0003, | |
2974 | /* ftis */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2975 | /* ftsize */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2976 | /* ftmtime */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2977 | /* ftatime */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2978 | /* ftctime */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2979 | /* ftrowned */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2980 | /* fteowned */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2981 | /* ftzero */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2982 | /* ftsock */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2983 | /* ftchr */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2984 | /* ftblk */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2985 | /* ftfile */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2986 | /* ftdir */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2987 | /* ftpipe */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2988 | /* ftsuid */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2989 | /* ftsgid */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2990 | /* ftsvtx */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2991 | /* ftlink */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2992 | /* fttty */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2993 | /* fttext */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2994 | /* ftbinary */ 0x15f0, 0x184c, 0x1708, 0x0003, | |
2995 | /* chdir */ 0x3a70, 0x012f, | |
2996 | /* chown */ 0x3a70, 0x012f, | |
2997 | /* chroot */ 0x3a70, 0x0003, | |
2998 | /* unlink */ 0x3a70, 0x012f, | |
2999 | /* chmod */ 0x3a70, 0x012f, | |
3000 | /* utime */ 0x3a70, 0x012f, | |
3001 | /* rename */ 0x3a70, 0x012f, | |
3002 | /* link */ 0x3a70, 0x012f, | |
3003 | /* symlink */ 0x3a70, 0x012f, | |
f3574cc6 | 3004 | /* readlink */ 0x0003, |
c486bd5c DM |
3005 | /* mkdir */ 0x3a70, 0x012f, |
3006 | /* rmdir */ 0x3a70, 0x0003, | |
f3574cc6 DM |
3007 | /* open_dir */ 0x012f, |
3008 | /* readdir */ 0x0003, | |
3009 | /* telldir */ 0x0003, | |
3010 | /* seekdir */ 0x012f, | |
3011 | /* rewinddir */ 0x0003, | |
3012 | /* closedir */ 0x0003, | |
c486bd5c DM |
3013 | /* wait */ 0x3a71, |
3014 | /* waitpid */ 0x3a70, 0x012f, | |
3015 | /* system */ 0x3a70, 0x012f, | |
3016 | /* exec */ 0x3a70, 0x012f, | |
3017 | /* kill */ 0x3a70, 0x012f, | |
3018 | /* getppid */ 0x3a71, | |
3019 | /* getpgrp */ 0x3a70, 0x012f, | |
3020 | /* setpgrp */ 0x3a70, 0x012f, | |
3021 | /* getpriority */ 0x3a70, 0x012f, | |
3022 | /* setpriority */ 0x3a70, 0x012f, | |
3023 | /* time */ 0x3a71, | |
f3574cc6 DM |
3024 | /* localtime */ 0x0003, |
3025 | /* gmtime */ 0x012f, | |
3026 | /* alarm */ 0x0003, | |
c486bd5c | 3027 | /* sleep */ 0x3a70, 0x012f, |
f3574cc6 DM |
3028 | /* shmget */ 0x012f, |
3029 | /* shmctl */ 0x012f, | |
3030 | /* shmread */ 0x012f, | |
3031 | /* shmwrite */ 0x012f, | |
3032 | /* msgget */ 0x012f, | |
3033 | /* msgctl */ 0x012f, | |
3034 | /* msgsnd */ 0x012f, | |
3035 | /* msgrcv */ 0x012f, | |
3036 | /* semop */ 0x012f, | |
3037 | /* semget */ 0x012f, | |
3038 | /* semctl */ 0x012f, | |
3039 | /* require */ 0x0003, | |
3040 | /* dofile */ 0x0003, | |
c486bd5c DM |
3041 | /* entereval */ 0x2ed4, 0x0950, 0x062c, 0x3b48, 0x1c64, 0x0003, |
3042 | /* leaveeval */ 0x2e38, 0x0003, | |
f3574cc6 DM |
3043 | /* entertry */ 0x0003, |
3044 | /* ghbyname */ 0x0003, | |
3045 | /* ghbyaddr */ 0x012f, | |
3046 | /* gnbyname */ 0x0003, | |
3047 | /* gnbyaddr */ 0x012f, | |
3048 | /* gpbyname */ 0x0003, | |
3049 | /* gpbynumber */ 0x012f, | |
3050 | /* gsbyname */ 0x012f, | |
3051 | /* gsbyport */ 0x012f, | |
3052 | /* shostent */ 0x0003, | |
3053 | /* snetent */ 0x0003, | |
3054 | /* sprotoent */ 0x0003, | |
3055 | /* sservent */ 0x0003, | |
3056 | /* gpwnam */ 0x0003, | |
3057 | /* gpwuid */ 0x0003, | |
3058 | /* ggrnam */ 0x0003, | |
3059 | /* ggrgid */ 0x0003, | |
3060 | /* syscall */ 0x012f, | |
3061 | /* lock */ 0x0003, | |
3062 | /* once */ 0x0003, | |
3063 | /* reach */ 0x0003, | |
c486bd5c | 3064 | /* rkeys */ 0x26ac, 0x0003, |
f3574cc6 | 3065 | /* rvalues */ 0x0003, |
c486bd5c | 3066 | /* coreargs */ 0x277c, 0x0018, 0x0d24, 0x0c41, |
f3574cc6 DM |
3067 | /* runcv */ 0x00bd, |
3068 | /* fc */ 0x0003, | |
c486bd5c | 3069 | /* padrange */ 0x25bc, 0x019b, |
f3574cc6 DM |
3070 | |
3071 | }; | |
3072 | ||
3073 | ||
3074 | /* PL_op_private_valid: for each op, indexed by op_type, indicate which | |
3075 | * flags bits in op_private are legal */ | |
3076 | ||
3077 | EXTCONST U8 PL_op_private_valid[] = { | |
3078 | /* NULL */ (0xff), | |
3079 | /* STUB */ (0), | |
3080 | /* SCALAR */ (OPpARG1_MASK), | |
3081 | /* PUSHMARK */ (OPpPAD_STATE|OPpLVAL_INTRO), | |
3082 | /* WANTARRAY */ (OPpOFFBYONE), | |
3083 | /* CONST */ (OPpCONST_NOVER|OPpCONST_SHORTCIRCUIT|OPpCONST_STRICT|OPpCONST_ENTERED|OPpCONST_BARE), | |
3084 | /* GVSV */ (OPpOUR_INTRO|OPpLVAL_INTRO), | |
3085 | /* GV */ (OPpEARLY_CV), | |
3086 | /* GELEM */ (OPpARG2_MASK), | |
3087 | /* PADSV */ (OPpPAD_STATE|OPpDEREF|OPpLVAL_INTRO), | |
3088 | /* PADAV */ (OPpSLICEWARNING|OPpMAYBE_LVSUB|OPpPAD_STATE|OPpLVAL_INTRO), | |
3089 | /* PADHV */ (OPpSLICEWARNING|OPpMAYBE_LVSUB|OPpPAD_STATE|OPpTRUEBOOL|OPpMAYBE_TRUEBOOL|OPpLVAL_INTRO), | |
3090 | /* PADANY */ (0), | |
3091 | /* PUSHRE */ (OPpRUNTIME), | |
3092 | /* RV2GV */ (OPpARG1_MASK|OPpHINT_STRICT_REFS|OPpDONT_INIT_GV|OPpMAYBE_LVSUB|OPpALLOW_FAKE|OPpDEREF|OPpLVAL_INTRO), | |
3093 | /* RV2SV */ (OPpARG1_MASK|OPpHINT_STRICT_REFS|OPpOUR_INTRO|OPpDEREF|OPpLVAL_INTRO), | |
3094 | /* AV2ARYLEN */ (OPpARG1_MASK|OPpMAYBE_LVSUB), | |
3095 | /* RV2CV */ (OPpARG1_MASK|OPpHINT_STRICT_REFS|OPpENTERSUB_HASTARG|OPpENTERSUB_AMPER|OPpENTERSUB_DB|OPpMAY_RETURN_CONSTANT|OPpENTERSUB_NOPAREN), | |
3096 | /* ANONCODE */ (0), | |
3097 | /* PROTOTYPE */ (OPpARG1_MASK), | |
3098 | /* REFGEN */ (OPpARG1_MASK), | |
3099 | /* SREFGEN */ (OPpARG1_MASK), | |
3100 | /* REF */ (OPpARG1_MASK), | |
3101 | /* BLESS */ (OPpARG4_MASK), | |
3102 | /* BACKTICK */ (OPpARG1_MASK|OPpOPEN_IN_RAW|OPpOPEN_IN_CRLF|OPpOPEN_OUT_RAW|OPpOPEN_OUT_CRLF), | |
3103 | /* GLOB */ (OPpARG4_MASK), | |
3104 | /* READLINE */ (OPpARG1_MASK), | |
3105 | /* RCATLINE */ (0), | |
3106 | /* REGCMAYBE */ (OPpARG1_MASK), | |
3107 | /* REGCRESET */ (OPpARG1_MASK), | |
3108 | /* REGCOMP */ (OPpARG1_MASK), | |
3109 | /* MATCH */ (OPpTARGET_MY|OPpRUNTIME), | |
3110 | /* QR */ (OPpRUNTIME), | |
3111 | /* SUBST */ (OPpTARGET_MY|OPpRUNTIME), | |
3112 | /* SUBSTCONT */ (OPpARG1_MASK|OPpRUNTIME), | |
3113 | /* TRANS */ (OPpTRANS_FROM_UTF|OPpTRANS_TO_UTF|OPpTRANS_IDENTICAL|OPpTRANS_SQUASH|OPpTARGET_MY|OPpTRANS_COMPLEMENT|OPpTRANS_GROWS|OPpTRANS_DELETE), | |
3114 | /* TRANSR */ (OPpTRANS_FROM_UTF|OPpTRANS_TO_UTF|OPpTRANS_IDENTICAL|OPpTRANS_SQUASH|OPpTARGET_MY|OPpTRANS_COMPLEMENT|OPpTRANS_GROWS|OPpTRANS_DELETE), | |
3115 | /* SASSIGN */ (OPpARG2_MASK|OPpASSIGN_BACKWARDS|OPpASSIGN_CV_TO_GV), | |
3116 | /* AASSIGN */ (OPpARG2_MASK|OPpMAYBE_LVSUB|OPpASSIGN_COMMON), | |
3117 | /* CHOP */ (OPpARG1_MASK), | |
3118 | /* SCHOP */ (OPpARG1_MASK), | |
3119 | /* CHOMP */ (OPpARG1_MASK|OPpTARGET_MY), | |
3120 | /* SCHOMP */ (OPpARG1_MASK|OPpTARGET_MY), | |
3121 | /* DEFINED */ (OPpARG1_MASK), | |
3122 | /* UNDEF */ (OPpARG1_MASK), | |
3123 | /* STUDY */ (OPpARG1_MASK), | |
3124 | /* POS */ (OPpARG1_MASK|OPpMAYBE_LVSUB|OPpLVAL_INTRO), | |
3125 | /* PREINC */ (OPpARG1_MASK), | |
3126 | /* I_PREINC */ (OPpARG1_MASK), | |
3127 | /* PREDEC */ (OPpARG1_MASK), | |
3128 | /* I_PREDEC */ (OPpARG1_MASK), | |
3129 | /* POSTINC */ (OPpARG1_MASK), | |
3130 | /* I_POSTINC */ (OPpARG1_MASK|OPpTARGET_MY), | |
3131 | /* POSTDEC */ (OPpARG1_MASK), | |
3132 | /* I_POSTDEC */ (OPpARG1_MASK|OPpTARGET_MY), | |
3133 | /* POW */ (OPpARG2_MASK|OPpTARGET_MY), | |
3134 | /* MULTIPLY */ (OPpARG2_MASK|OPpTARGET_MY), | |
3135 | /* I_MULTIPLY */ (OPpARG2_MASK|OPpTARGET_MY), | |
3136 | /* DIVIDE */ (OPpARG2_MASK|OPpTARGET_MY), | |
3137 | /* I_DIVIDE */ (OPpARG2_MASK|OPpTARGET_MY), | |
3138 | /* MODULO */ (OPpARG2_MASK|OPpTARGET_MY), | |
3139 | /* I_MODULO */ (OPpARG2_MASK|OPpTARGET_MY), | |
3140 | /* REPEAT */ (OPpARG2_MASK|OPpREPEAT_DOLIST), | |
3141 | /* ADD */ (OPpARG2_MASK|OPpTARGET_MY), | |
3142 | /* I_ADD */ (OPpARG2_MASK|OPpTARGET_MY), | |
3143 | /* SUBTRACT */ (OPpARG2_MASK|OPpTARGET_MY), | |
3144 | /* I_SUBTRACT */ (OPpARG2_MASK|OPpTARGET_MY), | |
3145 | /* CONCAT */ (OPpARG2_MASK|OPpTARGET_MY), | |
3146 | /* STRINGIFY */ (OPpARG4_MASK|OPpTARGET_MY), | |
3147 | /* LEFT_SHIFT */ (OPpARG2_MASK|OPpTARGET_MY), | |
3148 | /* RIGHT_SHIFT */ (OPpARG2_MASK|OPpTARGET_MY), | |
3149 | /* LT */ (OPpARG2_MASK), | |
3150 | /* I_LT */ (OPpARG2_MASK), | |
3151 | /* GT */ (OPpARG2_MASK), | |
3152 | /* I_GT */ (OPpARG2_MASK), | |
3153 | /* LE */ (OPpARG2_MASK), | |
3154 | /* I_LE */ (OPpARG2_MASK), | |
3155 | /* GE */ (OPpARG2_MASK), | |
3156 | /* I_GE */ (OPpARG2_MASK), | |
3157 | /* EQ */ (OPpARG2_MASK), | |
3158 | /* I_EQ */ (OPpARG2_MASK), | |
3159 | /* NE */ (OPpARG2_MASK), | |
3160 | /* I_NE */ (OPpARG2_MASK), | |
3161 | /* NCMP */ (OPpARG2_MASK), | |
3162 | /* I_NCMP */ (OPpARG2_MASK), | |
3163 | /* SLT */ (OPpARG2_MASK), | |
3164 | /* SGT */ (OPpARG2_MASK), | |
3165 | /* SLE */ (OPpARG2_MASK), | |
3166 | /* SGE */ (OPpARG2_MASK), | |
3167 | /* SEQ */ (OPpARG2_MASK), | |
3168 | /* SNE */ (OPpARG2_MASK), | |
3169 | /* SCMP */ (OPpARG2_MASK), | |
3170 | /* BIT_AND */ (OPpARG2_MASK), | |
3171 | /* BIT_XOR */ (OPpARG2_MASK), | |
3172 | /* BIT_OR */ (OPpARG2_MASK), | |
3173 | /* NEGATE */ (OPpARG1_MASK), | |
3174 | /* I_NEGATE */ (OPpARG1_MASK|OPpTARGET_MY), | |
3175 | /* NOT */ (OPpARG1_MASK), | |
3176 | /* COMPLEMENT */ (OPpARG1_MASK), | |
3177 | /* SMARTMATCH */ (OPpARG2_MASK), | |
3178 | /* ATAN2 */ (OPpARG4_MASK|OPpTARGET_MY), | |
3179 | /* SIN */ (OPpARG1_MASK|OPpTARGET_MY), | |
3180 | /* COS */ (OPpARG1_MASK|OPpTARGET_MY), | |
3181 | /* RAND */ (OPpARG4_MASK|OPpTARGET_MY), | |
3182 | /* SRAND */ (OPpARG4_MASK|OPpTARGET_MY), | |
3183 | /* EXP */ (OPpARG1_MASK|OPpTARGET_MY), | |
3184 | /* LOG */ (OPpARG1_MASK|OPpTARGET_MY), | |
3185 | /* SQRT */ (OPpARG1_MASK|OPpTARGET_MY), | |
3186 | /* INT */ (OPpARG1_MASK|OPpTARGET_MY), | |
3187 | /* HEX */ (OPpARG1_MASK|OPpTARGET_MY), | |
3188 | /* OCT */ (OPpARG1_MASK|OPpTARGET_MY), | |
3189 | /* ABS */ (OPpARG1_MASK|OPpTARGET_MY), | |
3190 | /* LENGTH */ (OPpARG1_MASK|OPpTARGET_MY), | |
3191 | /* SUBSTR */ (OPpARG3_MASK|OPpMAYBE_LVSUB|OPpSUBSTR_REPL_FIRST|OPpLVAL_INTRO), | |
3192 | /* VEC */ (OPpARG2_MASK|OPpMAYBE_LVSUB|OPpLVAL_INTRO), | |
3193 | /* INDEX */ (OPpARG4_MASK|OPpTARGET_MY), | |
3194 | /* RINDEX */ (OPpARG4_MASK|OPpTARGET_MY), | |
3195 | /* SPRINTF */ (OPpARG4_MASK), | |
3196 | /* FORMLINE */ (OPpARG4_MASK), | |
3197 | /* ORD */ (OPpARG1_MASK|OPpTARGET_MY), | |
3198 | /* CHR */ (OPpARG1_MASK|OPpTARGET_MY), | |
3199 | /* CRYPT */ (OPpARG4_MASK|OPpTARGET_MY), | |
3200 | /* UCFIRST */ (OPpARG1_MASK), | |
3201 | /* LCFIRST */ (OPpARG1_MASK), | |
3202 | /* UC */ (OPpARG1_MASK), | |
3203 | /* LC */ (OPpARG1_MASK), | |
3204 | /* QUOTEMETA */ (OPpARG1_MASK), | |
3205 | /* RV2AV */ (OPpARG1_MASK|OPpHINT_STRICT_REFS|OPpSLICEWARNING|OPpMAYBE_LVSUB|OPpOUR_INTRO|OPpLVAL_INTRO), | |
3206 | /* AELEMFAST */ (255), | |
3207 | /* AELEMFAST_LEX */ (255), | |
3208 | /* AELEM */ (OPpARG2_MASK|OPpMAYBE_LVSUB|OPpLVAL_DEFER|OPpDEREF|OPpLVAL_INTRO), | |
3209 | /* ASLICE */ (OPpSLICEWARNING|OPpMAYBE_LVSUB|OPpLVAL_INTRO), | |
3210 | /* KVASLICE */ (OPpMAYBE_LVSUB), | |
3211 | /* AEACH */ (OPpARG1_MASK), | |
3212 | /* AKEYS */ (OPpARG1_MASK), | |
3213 | /* AVALUES */ (OPpARG1_MASK), | |
3214 | /* EACH */ (OPpARG1_MASK), | |
3215 | /* VALUES */ (OPpARG1_MASK), | |
3216 | /* KEYS */ (OPpARG1_MASK|OPpMAYBE_LVSUB), | |
3217 | /* DELETE */ (OPpARG1_MASK|OPpSLICE|OPpLVAL_INTRO), | |
3218 | /* EXISTS */ (OPpARG1_MASK|OPpEXISTS_SUB), | |
3219 | /* RV2HV */ (OPpARG1_MASK|OPpHINT_STRICT_REFS|OPpSLICEWARNING|OPpMAYBE_LVSUB|OPpOUR_INTRO|OPpTRUEBOOL|OPpMAYBE_TRUEBOOL|OPpLVAL_INTRO), | |
3220 | /* HELEM */ (OPpARG2_MASK|OPpMAYBE_LVSUB|OPpLVAL_DEFER|OPpDEREF|OPpLVAL_INTRO), | |
3221 | /* HSLICE */ (OPpSLICEWARNING|OPpMAYBE_LVSUB|OPpLVAL_INTRO), | |
3222 | /* KVHSLICE */ (OPpMAYBE_LVSUB), | |
3223 | /* UNPACK */ (OPpARG4_MASK), | |
3224 | /* PACK */ (OPpARG4_MASK), | |
3225 | /* SPLIT */ (OPpSPLIT_IMPLIM), | |
3226 | /* JOIN */ (OPpARG4_MASK), | |
3227 | /* LIST */ (OPpLIST_GUESSED|OPpLVAL_INTRO), | |
3228 | /* LSLICE */ (OPpARG2_MASK), | |
3229 | /* ANONLIST */ (OPpARG4_MASK), | |
3230 | /* ANONHASH */ (OPpARG4_MASK), | |
3231 | /* SPLICE */ (OPpARG4_MASK), | |
3232 | /* PUSH */ (OPpARG4_MASK|OPpTARGET_MY), | |
3233 | /* POP */ (OPpARG1_MASK), | |
3234 | /* SHIFT */ (OPpARG1_MASK), | |
3235 | /* UNSHIFT */ (OPpARG4_MASK|OPpTARGET_MY), | |
3236 | /* SORT */ (OPpSORT_NUMERIC|OPpSORT_INTEGER|OPpSORT_REVERSE|OPpSORT_INPLACE|OPpSORT_DESCEND|OPpSORT_QSORT|OPpSORT_STABLE), | |
3237 | /* REVERSE */ (OPpARG1_MASK|OPpREVERSE_INPLACE), | |
3238 | /* GREPSTART */ (OPpGREP_LEX), | |
3239 | /* GREPWHILE */ (OPpARG1_MASK|OPpGREP_LEX), | |
3240 | /* MAPSTART */ (OPpGREP_LEX), | |
3241 | /* MAPWHILE */ (OPpARG1_MASK|OPpGREP_LEX), | |
3242 | /* RANGE */ (OPpARG1_MASK), | |
3243 | /* FLIP */ (OPpARG1_MASK|OPpFLIP_LINENUM), | |
3244 | /* FLOP */ (OPpARG1_MASK|OPpFLIP_LINENUM), | |
3245 | /* AND */ (OPpARG1_MASK), | |
3246 | /* OR */ (OPpARG1_MASK), | |
3247 | /* XOR */ (OPpARG2_MASK), | |
3248 | /* DOR */ (OPpARG1_MASK), | |
3249 | /* COND_EXPR */ (OPpARG1_MASK|OPpLVAL_INTRO), | |
3250 | /* ANDASSIGN */ (OPpARG1_MASK), | |
3251 | /* ORASSIGN */ (OPpARG1_MASK), | |
3252 | /* DORASSIGN */ (OPpARG1_MASK), | |
3253 | /* METHOD */ (OPpARG1_MASK), | |
3254 | /* ENTERSUB */ (OPpENTERSUB_INARGS|OPpHINT_STRICT_REFS|OPpENTERSUB_HASTARG|OPpENTERSUB_AMPER|OPpENTERSUB_DB|OPpDEREF|OPpLVAL_INTRO), | |
3255 | /* LEAVESUB */ (OPpARG1_MASK|OPpREFCOUNTED), | |
3256 | /* LEAVESUBLV */ (OPpARG1_MASK|OPpREFCOUNTED), | |
3257 | /* CALLER */ (OPpARG4_MASK|OPpOFFBYONE), | |
3258 | /* WARN */ (OPpARG4_MASK), | |
3259 | /* DIE */ (OPpARG4_MASK), | |
3260 | /* RESET */ (OPpARG4_MASK), | |
3261 | /* LINESEQ */ (0), | |
3262 | /* NEXTSTATE */ (OPpHUSH_VMSISH|OPpHINT_M_VMSISH_STATUS|OPpHINT_M_VMSISH_TIME), | |
3263 | /* DBSTATE */ (OPpHUSH_VMSISH|OPpHINT_M_VMSISH_STATUS|OPpHINT_M_VMSISH_TIME), | |
3264 | /* UNSTACK */ (0), | |
3265 | /* ENTER */ (0), | |
3266 | /* LEAVE */ (OPpREFCOUNTED|OPpLVALUE), | |
3267 | /* SCOPE */ (0), | |
3268 | /* ENTERITER */ (OPpITER_REVERSED|OPpITER_DEF|OPpOUR_INTRO|OPpLVAL_INTRO), | |
3269 | /* ITER */ (OPpITER_REVERSED), | |
3270 | /* ENTERLOOP */ (0), | |
3271 | /* LEAVELOOP */ (OPpARG2_MASK|OPpLVALUE), | |
3272 | /* RETURN */ (0), | |
3273 | /* LAST */ (OPpARG1_MASK|OPpPV_IS_UTF8), | |
3274 | /* NEXT */ (OPpARG1_MASK|OPpPV_IS_UTF8), | |
3275 | /* REDO */ (OPpARG1_MASK|OPpPV_IS_UTF8), | |
3276 | /* DUMP */ (OPpARG1_MASK|OPpPV_IS_UTF8), | |
3277 | /* GOTO */ (OPpARG1_MASK|OPpPV_IS_UTF8), | |
3278 | /* EXIT */ (OPpARG4_MASK), | |
3279 | /* METHOD_NAMED */ (0), | |
3280 | /* ENTERGIVEN */ (OPpARG1_MASK), | |
3281 | /* LEAVEGIVEN */ (OPpARG1_MASK), | |
3282 | /* ENTERWHEN */ (OPpARG1_MASK), | |
3283 | /* LEAVEWHEN */ (OPpARG1_MASK), | |
3284 | /* BREAK */ (0), | |
3285 | /* CONTINUE */ (0), | |
3286 | /* OPEN */ (OPpARG4_MASK|OPpOPEN_IN_RAW|OPpOPEN_IN_CRLF|OPpOPEN_OUT_RAW|OPpOPEN_OUT_CRLF), | |
3287 | /* CLOSE */ (OPpARG4_MASK), | |
3288 | /* PIPE_OP */ (OPpARG4_MASK), | |
3289 | /* FILENO */ (OPpARG4_MASK), | |
3290 | /* UMASK */ (OPpARG4_MASK), | |
3291 | /* BINMODE */ (OPpARG4_MASK), | |
3292 | /* TIE */ (OPpARG4_MASK), | |
3293 | /* UNTIE */ (OPpARG1_MASK), | |
3294 | /* TIED */ (OPpARG1_MASK), | |
3295 | /* DBMOPEN */ (OPpARG4_MASK), | |
3296 | /* DBMCLOSE */ (OPpARG1_MASK), | |
3297 | /* SSELECT */ (OPpARG4_MASK), | |
3298 | /* SELECT */ (OPpARG4_MASK), | |
3299 | /* GETC */ (OPpARG4_MASK), | |
3300 | /* READ */ (OPpARG4_MASK), | |
3301 | /* ENTERWRITE */ (OPpARG4_MASK), | |
3302 | /* LEAVEWRITE */ (OPpARG1_MASK|OPpREFCOUNTED), | |
3303 | /* PRTF */ (0), | |
3304 | /* PRINT */ (0), | |
3305 | /* SAY */ (0), | |
3306 | /* SYSOPEN */ (OPpARG4_MASK), | |
3307 | /* SYSSEEK */ (OPpARG4_MASK), | |
3308 | /* SYSREAD */ (OPpARG4_MASK), | |
3309 | /* SYSWRITE */ (OPpARG4_MASK), | |
3310 | /* EOF */ (OPpARG4_MASK), | |
3311 | /* TELL */ (OPpARG4_MASK), | |
3312 | /* SEEK */ (OPpARG4_MASK), | |
3313 | /* TRUNCATE */ (OPpARG4_MASK), | |
3314 | /* FCNTL */ (OPpARG4_MASK), | |
3315 | /* IOCTL */ (OPpARG4_MASK), | |
3316 | /* FLOCK */ (OPpARG4_MASK|OPpTARGET_MY), | |
3317 | /* SEND */ (OPpARG4_MASK), | |
3318 | /* RECV */ (OPpARG4_MASK), | |
3319 | /* SOCKET */ (OPpARG4_MASK), | |
3320 | /* SOCKPAIR */ (OPpARG4_MASK), | |
3321 | /* BIND */ (OPpARG4_MASK), | |
3322 | /* CONNECT */ (OPpARG4_MASK), | |
3323 | /* LISTEN */ (OPpARG4_MASK), | |
3324 | /* ACCEPT */ (OPpARG4_MASK), | |
3325 | /* SHUTDOWN */ (OPpARG4_MASK), | |
3326 | /* GSOCKOPT */ (OPpARG4_MASK), | |
3327 | /* SSOCKOPT */ (OPpARG4_MASK), | |
3328 | /* GETSOCKNAME */ (OPpARG1_MASK), | |
3329 | /* GETPEERNAME */ (OPpARG1_MASK), | |
3330 | /* LSTAT */ (OPpARG1_MASK), | |
3331 | /* STAT */ (OPpARG1_MASK), | |
3332 | /* FTRREAD */ (OPpARG1_MASK|OPpFT_ACCESS|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3333 | /* FTRWRITE */ (OPpARG1_MASK|OPpFT_ACCESS|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3334 | /* FTREXEC */ (OPpARG1_MASK|OPpFT_ACCESS|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3335 | /* FTEREAD */ (OPpARG1_MASK|OPpFT_ACCESS|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3336 | /* FTEWRITE */ (OPpARG1_MASK|OPpFT_ACCESS|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3337 | /* FTEEXEC */ (OPpARG1_MASK|OPpFT_ACCESS|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3338 | /* FTIS */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3339 | /* FTSIZE */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3340 | /* FTMTIME */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3341 | /* FTATIME */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3342 | /* FTCTIME */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3343 | /* FTROWNED */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3344 | /* FTEOWNED */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3345 | /* FTZERO */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3346 | /* FTSOCK */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3347 | /* FTCHR */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3348 | /* FTBLK */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3349 | /* FTFILE */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3350 | /* FTDIR */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3351 | /* FTPIPE */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3352 | /* FTSUID */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3353 | /* FTSGID */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3354 | /* FTSVTX */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3355 | /* FTLINK */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3356 | /* FTTTY */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3357 | /* FTTEXT */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3358 | /* FTBINARY */ (OPpARG1_MASK|OPpFT_STACKED|OPpFT_STACKING|OPpFT_AFTER_t), | |
3359 | /* CHDIR */ (OPpARG4_MASK|OPpTARGET_MY), | |
3360 | /* CHOWN */ (OPpARG4_MASK|OPpTARGET_MY), | |
3361 | /* CHROOT */ (OPpARG1_MASK|OPpTARGET_MY), | |
3362 | /* UNLINK */ (OPpARG4_MASK|OPpTARGET_MY), | |
3363 | /* CHMOD */ (OPpARG4_MASK|OPpTARGET_MY), | |
3364 | /* UTIME */ (OPpARG4_MASK|OPpTARGET_MY), | |
3365 | /* RENAME */ (OPpARG4_MASK|OPpTARGET_MY), | |
3366 | /* LINK */ (OPpARG4_MASK|OPpTARGET_MY), | |
3367 | /* SYMLINK */ (OPpARG4_MASK|OPpTARGET_MY), | |
3368 | /* READLINK */ (OPpARG1_MASK), | |
3369 | /* MKDIR */ (OPpARG4_MASK|OPpTARGET_MY), | |
3370 | /* RMDIR */ (OPpARG1_MASK|OPpTARGET_MY), | |
3371 | /* OPEN_DIR */ (OPpARG4_MASK), | |
3372 | /* READDIR */ (OPpARG1_MASK), | |
3373 | /* TELLDIR */ (OPpARG1_MASK), | |
3374 | /* SEEKDIR */ (OPpARG4_MASK), | |
3375 | /* REWINDDIR */ (OPpARG1_MASK), | |
3376 | /* CLOSEDIR */ (OPpARG1_MASK), | |
3377 | /* FORK */ (0), | |
3378 | /* WAIT */ (OPpTARGET_MY), | |
3379 | /* WAITPID */ (OPpARG4_MASK|OPpTARGET_MY), | |
3380 | /* SYSTEM */ (OPpARG4_MASK|OPpTARGET_MY), | |
3381 | /* EXEC */ (OPpARG4_MASK|OPpTARGET_MY), | |
3382 | /* KILL */ (OPpARG4_MASK|OPpTARGET_MY), | |
3383 | /* GETPPID */ (OPpTARGET_MY), | |
3384 | /* GETPGRP */ (OPpARG4_MASK|OPpTARGET_MY), | |
3385 | /* SETPGRP */ (OPpARG4_MASK|OPpTARGET_MY), | |
3386 | /* GETPRIORITY */ (OPpARG4_MASK|OPpTARGET_MY), | |
3387 | /* SETPRIORITY */ (OPpARG4_MASK|OPpTARGET_MY), | |
3388 | /* TIME */ (OPpTARGET_MY), | |
3389 | /* TMS */ (0), | |
3390 | /* LOCALTIME */ (OPpARG1_MASK), | |
3391 | /* GMTIME */ (OPpARG4_MASK), | |
3392 | /* ALARM */ (OPpARG1_MASK), | |
3393 | /* SLEEP */ (OPpARG4_MASK|OPpTARGET_MY), | |
3394 | /* SHMGET */ (OPpARG4_MASK), | |
3395 | /* SHMCTL */ (OPpARG4_MASK), | |
3396 | /* SHMREAD */ (OPpARG4_MASK), | |
3397 | /* SHMWRITE */ (OPpARG4_MASK), | |
3398 | /* MSGGET */ (OPpARG4_MASK), | |
3399 | /* MSGCTL */ (OPpARG4_MASK), | |
3400 | /* MSGSND */ (OPpARG4_MASK), | |
3401 | /* MSGRCV */ (OPpARG4_MASK), | |
3402 | /* SEMOP */ (OPpARG4_MASK), | |
3403 | /* SEMGET */ (OPpARG4_MASK), | |
3404 | /* SEMCTL */ (OPpARG4_MASK), | |
3405 | /* REQUIRE */ (OPpARG1_MASK), | |
3406 | /* DOFILE */ (OPpARG1_MASK), | |
3407 | /* HINTSEVAL */ (0), | |
3408 | /* ENTEREVAL */ (OPpARG1_MASK|OPpEVAL_HAS_HH|OPpEVAL_UNICODE|OPpEVAL_BYTES|OPpEVAL_COPHH|OPpEVAL_RE_REPARSING), | |
3409 | /* LEAVEEVAL */ (OPpARG1_MASK|OPpREFCOUNTED), | |
3410 | /* ENTERTRY */ (OPpARG1_MASK), | |
3411 | /* LEAVETRY */ (0), | |
3412 | /* GHBYNAME */ (OPpARG1_MASK), | |
3413 | /* GHBYADDR */ (OPpARG4_MASK), | |
3414 | /* GHOSTENT */ (0), | |
3415 | /* GNBYNAME */ (OPpARG1_MASK), | |
3416 | /* GNBYADDR */ (OPpARG4_MASK), | |
3417 | /* GNETENT */ (0), | |
3418 | /* GPBYNAME */ (OPpARG1_MASK), | |
3419 | /* GPBYNUMBER */ (OPpARG4_MASK), | |
3420 | /* GPROTOENT */ (0), | |
3421 | /* GSBYNAME */ (OPpARG4_MASK), | |
3422 | /* GSBYPORT */ (OPpARG4_MASK), | |
3423 | /* GSERVENT */ (0), | |
3424 | /* SHOSTENT */ (OPpARG1_MASK), | |
3425 | /* SNETENT */ (OPpARG1_MASK), | |
3426 | /* SPROTOENT */ (OPpARG1_MASK), | |
3427 | /* SSERVENT */ (OPpARG1_MASK), | |
3428 | /* EHOSTENT */ (0), | |
3429 | /* ENETENT */ (0), | |
3430 | /* EPROTOENT */ (0), | |
3431 | /* ESERVENT */ (0), | |
3432 | /* GPWNAM */ (OPpARG1_MASK), | |
3433 | /* GPWUID */ (OPpARG1_MASK), | |
3434 | /* GPWENT */ (0), | |
3435 | /* SPWENT */ (0), | |
3436 | /* EPWENT */ (0), | |
3437 | /* GGRNAM */ (OPpARG1_MASK), | |
3438 | /* GGRGID */ (OPpARG1_MASK), | |
3439 | /* GGRENT */ (0), | |
3440 | /* SGRENT */ (0), | |
3441 | /* EGRENT */ (0), | |
3442 | /* GETLOGIN */ (0), | |
3443 | /* SYSCALL */ (OPpARG4_MASK), | |
3444 | /* LOCK */ (OPpARG1_MASK), | |
3445 | /* ONCE */ (OPpARG1_MASK), | |
3446 | /* CUSTOM */ (0xff), | |
3447 | /* REACH */ (OPpARG1_MASK), | |
3448 | /* RKEYS */ (OPpARG1_MASK|OPpMAYBE_LVSUB), | |
3449 | /* RVALUES */ (OPpARG1_MASK), | |
3450 | /* COREARGS */ (OPpCOREARGS_DEREF1|OPpCOREARGS_DEREF2|OPpCOREARGS_SCALARMOD|OPpCOREARGS_PUSHMARK), | |
3451 | /* RUNCV */ (OPpOFFBYONE), | |
3452 | /* FC */ (OPpARG1_MASK), | |
3453 | /* PADCV */ (0), | |
3454 | /* INTROCV */ (0), | |
3455 | /* CLONECV */ (0), | |
3456 | /* PADRANGE */ (OPpPADRANGE_COUNTMASK|OPpLVAL_INTRO), | |
3457 | ||
3458 | }; | |
3459 | ||
3460 | # endif /* !DOINIT */ | |
3461 | #endif /* !PERL_GLOBAL_STRUCT_INIT */ | |
3462 | ||
3463 | END_EXTERN_C | |
3464 | ||
3465 | ||
3466 | ||
37442d52 | 3467 | /* ex: set ro: */ |