1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
|
#ifndef GNUC_ATTRIBUTE_CHECK /* disable GNUC attribute checking if not GNUC */
#ifdef __attribute__ /* Avoid possible redefinition errors */
#undef __attribute__
#endif
#define __attribute__(attr)
#endif
#ifdef OVERLOAD
SV* amagic_call _((SV* left,SV* right,int method,int dir));
#endif /* OVERLOAD */
OP* append_elem _((I32 optype, OP* head, OP* tail));
OP* append_list _((I32 optype, LISTOP* first, LISTOP* last));
I32 apply _((I32 type, SV** mark, SV** sp));
void assertref _((OP* op));
void av_clear _((AV* ar));
void av_extend _((AV* ar, I32 key));
AV* av_fake _((I32 size, SV** svp));
SV** av_fetch _((AV* ar, I32 key, I32 lval));
void av_fill _((AV* ar, I32 fill));
I32 av_len _((AV* ar));
AV* av_make _((I32 size, SV** svp));
SV* av_pop _((AV* ar));
void av_push _((AV* ar, SV* val));
SV* av_shift _((AV* ar));
SV** av_store _((AV* ar, I32 key, SV* val));
void av_undef _((AV* ar));
void av_unshift _((AV* ar, I32 num));
OP* bind_match _((I32 type, OP* left, OP* pat));
OP* block_end _((int line, int floor, OP* seq));
int block_start _((void));
void calllist _((AV* list));
I32 cando _((I32 bit, I32 effective, struct stat* statbufp));
#ifndef CASTNEGFLOAT
U32 cast_ulong _((double f));
#endif
#if !defined(HAS_TRUNCATE) && !defined(HAS_CHSIZE) && defined(F_FREESP)
I32 chsize _((int fd, Off_t length));
#endif
OP * ck_gvconst _((OP * o));
OP * ck_retarget _((OP *op));
OP* convert _((I32 optype, I32 flags, OP* op));
char* cpytill _((char* to, char* from, char* fromend, int delim, I32* retlen));
void croak _((char* pat,...)) __attribute__((format(printf,1,2),noreturn));
void cv_undef _((CV* cv));
#ifdef DEBUGGING
void cx_dump _((CONTEXT* cs));
#endif
void cryptswitch_add _((cryptswitch_t funcp));
I32 cxinc _((void));
void deb _((char* pat,...)) __attribute__((format(printf,1,2)));
void deb_growlevel _((void));
I32 debop _((OP* op));
I32 debstackptrs _((void));
#ifdef DEBUGGING
void debprofdump _((void));
#endif
I32 debstack _((void));
void deprecate _((char* s));
OP* die _((char* pat,...)) __attribute__((format(printf,1,2)));
OP* die_where _((char* message));
void dounwind _((I32 cxix));
bool do_aexec _((SV* really, SV** mark, SV** sp));
void do_chop _((SV* asv, SV* sv));
bool do_close _((GV* gv, bool explicit));
bool do_eof _((GV* gv));
bool do_exec _((char* cmd));
void do_execfree _((void));
#if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM)
I32 do_ipcctl _((I32 optype, SV** mark, SV** sp));
I32 do_ipcget _((I32 optype, SV** mark, SV** sp));
#endif
void do_join _((SV* sv, SV* del, SV** mark, SV** sp));
OP* do_kv _((void));
#if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM)
I32 do_msgrcv _((SV** mark, SV** sp));
I32 do_msgsnd _((SV** mark, SV** sp));
#endif
bool do_open _((GV* gv, char* name, I32 len, FILE* supplied_fp));
void do_pipe _((SV* sv, GV* rgv, GV* wgv));
bool do_print _((SV* sv, FILE* fp));
OP * do_readline _((void));
I32 do_chomp _((SV* sv));
bool do_seek _((GV* gv, long pos, int whence));
#if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM)
I32 do_semop _((SV** mark, SV** sp));
I32 do_shmio _((I32 optype, SV** mark, SV** sp));
#endif
void do_sprintf _((SV* sv, I32 len, SV** sarg));
long do_tell _((GV* gv));
I32 do_trans _((SV* sv, OP* arg));
void do_vecset _((SV* sv));
void do_vop _((I32 optype, SV* sv, SV* left, SV* right));
void dump_all _((void));
void dump_eval _((void));
#ifdef NOTDEF /* See util.c */
int dump_fds _((char* s));
#endif
void dump_form _((GV* gv));
void dump_gv _((GV* gv));
void dump_op _((OP* arg));
void dump_pm _((PMOP* pm));
void dump_packsubs _((HV* stash));
void dump_sub _((GV* gv));
void fbm_compile _((SV* sv, I32 iflag));
char* fbm_instr _((unsigned char* big, unsigned char* bigend, SV* littlesv));
OP* force_list _((OP* arg));
OP* fold_constants _((OP * arg));
void free_tmps _((void));
OP* gen_constant_list _((OP* op));
void gp_free _((GV* gv));
GP* gp_ref _((GP* gp));
GV* gv_AVadd _((GV* gv));
GV* gv_HVadd _((GV* gv));
GV* gv_IOadd _((GV* gv));
void gv_check _((HV* stash));
void gv_efullname _((SV* sv, GV* gv));
GV* gv_fetchfile _((char* name));
GV* gv_fetchmeth _((HV* stash, char* name, STRLEN len, I32 level));
GV* gv_fetchmethod _((HV* stash, char* name));
GV* gv_fetchpv _((char* name, I32 add, I32 sv_type));
void gv_fullname _((SV* sv, GV* gv));
void gv_init _((GV *gv, HV *stash, char *name, STRLEN len, int multi));
HV* gv_stashpv _((char* name, I32 create));
HV* gv_stashsv _((SV* sv, I32 create));
void he_delayfree _((HE* hent));
void he_free _((HE* hent));
void hoistmust _((PMOP* pm));
void hv_clear _((HV* tb));
SV* hv_delete _((HV* tb, char* key, U32 klen));
bool hv_exists _((HV* tb, char* key, U32 klen));
SV** hv_fetch _((HV* tb, char* key, U32 klen, I32 lval));
I32 hv_iterinit _((HV* tb));
char* hv_iterkey _((HE* entry, I32* retlen));
HE* hv_iternext _((HV* tb));
SV * hv_iternextsv _((HV* hv, char** key, I32* retlen));
SV* hv_iterval _((HV* tb, HE* entry));
void hv_magic _((HV* hv, GV* gv, int how));
SV** hv_store _((HV* tb, char* key, U32 klen, SV* val, U32 hash));
void hv_undef _((HV* tb));
I32 ibcmp _((U8* a, U8* b, I32 len));
I32 ingroup _((I32 testgid, I32 effective));
char* instr _((char* big, char* little));
OP* invert _((OP* cmd));
OP* jmaybe _((OP* arg));
I32 keyword _((char* d, I32 len));
void leave_scope _((I32 base));
void lex_end _((void));
void lex_start _((SV *line));
OP* linklist _((OP* op));
OP* list _((OP* o));
OP* listkids _((OP* o));
OP* localize _((OP* arg, I32 lexical));
I32 looks_like_number _((SV* sv));
int magic_clearenv _((SV* sv, MAGIC* mg));
int magic_clearpack _((SV* sv, MAGIC* mg));
int magic_existspack _((SV* sv, MAGIC* mg));
int magic_get _((SV* sv, MAGIC* mg));
int magic_getarylen _((SV* sv, MAGIC* mg));
int magic_getpack _((SV* sv, MAGIC* mg));
int magic_getglob _((SV* sv, MAGIC* mg));
int magic_getpos _((SV* sv, MAGIC* mg));
int magic_gettaint _((SV* sv, MAGIC* mg));
int magic_getuvar _((SV* sv, MAGIC* mg));
U32 magic_len _((SV* sv, MAGIC* mg));
int magic_nextpack _((SV* sv, MAGIC* mg, SV* key));
int magic_set _((SV* sv, MAGIC* mg));
#ifdef OVERLOAD
int magic_setamagic _((SV* sv, MAGIC* mg));
#endif /* OVERLOAD */
int magic_setarylen _((SV* sv, MAGIC* mg));
int magic_setbm _((SV* sv, MAGIC* mg));
int magic_setdbline _((SV* sv, MAGIC* mg));
int magic_setenv _((SV* sv, MAGIC* mg));
int magic_setisa _((SV* sv, MAGIC* mg));
int magic_setglob _((SV* sv, MAGIC* mg));
int magic_setmglob _((SV* sv, MAGIC* mg));
int magic_setpack _((SV* sv, MAGIC* mg));
int magic_setpos _((SV* sv, MAGIC* mg));
int magic_setsig _((SV* sv, MAGIC* mg));
int magic_setsubstr _((SV* sv, MAGIC* mg));
int magic_settaint _((SV* sv, MAGIC* mg));
int magic_setuvar _((SV* sv, MAGIC* mg));
int magic_setvec _((SV* sv, MAGIC* mg));
int magic_wipepack _((SV* sv, MAGIC* mg));
void magicname _((char* sym, char* name, I32 namlen));
int main _((int argc, char** argv, char** env));
#ifndef STANDARD_C
Malloc_t malloc _((MEM_SIZE nbytes));
#endif
void markstack_grow _((void));
char* mess _((char* pat, va_list* args));
int mg_clear _((SV* sv));
int mg_copy _((SV *, SV *, char *, STRLEN));
MAGIC* mg_find _((SV* sv, int type));
int mg_free _((SV* sv));
int mg_get _((SV* sv));
U32 mg_len _((SV* sv));
void mg_magical _((SV* sv));
int mg_set _((SV* sv));
OP* mod _((OP* op, I32 type));
char* moreswitches _((char* s));
#ifdef MSTATS
void mstats _((char* s));
#endif
OP * my _(( OP *));
char* my_bcopy _((char* from, char* to, I32 len));
#if !defined(HAS_BZERO) && !defined(HAS_MEMSET)
char* my_bzero _((char* loc, I32 len));
#endif
void my_exit _((I32 status)) __attribute__((noreturn));
I32 my_lstat _((void));
#ifndef HAS_MEMCMP
I32 my_memcmp _((unsigned char* s1, unsigned char* s2, I32 len));
#endif
I32 my_pclose _((FILE* ptr));
FILE* my_popen _((char* cmd, char* mode));
void my_setenv _((char* nam, char* val));
I32 my_stat _((void));
#ifdef MYSWAP
short my_swap _((short s));
#endif
void my_unexec _((void));
OP* newANONLIST _((OP* op));
OP* newANONHASH _((OP* op));
OP* newANONSUB _((I32 floor, OP* block));
OP* newASSIGNOP _((I32 flags, OP* left, I32 optype, OP* right));
OP* newBINOP _((I32 optype, I32 flags, OP* left, OP* right));
OP* newCONDOP _((I32 flags, OP* expr, OP* true, OP* false));
void newFORM _((I32 floor, OP* op, OP* block));
OP* newFOROP _((I32 flags, char* label, line_t forline, OP* scalar, OP* expr, OP*block, OP*cont));
OP* newLOGOP _((I32 optype, I32 flags, OP* left, OP* right));
OP* newLOOPEX _((I32 type, OP* label));
OP* newLOOPOP _((I32 flags, I32 debuggable, OP* expr, OP* block));
OP* newMETHOD _((OP* ref, OP* name));
OP* newNULLLIST _((void));
OP* newOP _((I32 optype, I32 flags));
void newPROG _((OP* op));
OP* newRANGE _((I32 flags, OP* left, OP* right));
OP* newSLICEOP _((I32 flags, OP* subscript, OP* list));
OP* newSTATEOP _((I32 flags, char* label, OP* o));
CV* newSUB _((I32 floor, OP* op, OP* block));
OP* newUNOP _((I32 optype, I32 flags, OP* child));
CV* newXS _((char *name, void (*subaddr)(CV* cv), char *filename));
#ifdef DEPRECATED
CV* newXSUB _((char *name, I32 ix, I32 (*subaddr)(int,int,int), char *filename));
#endif
AV* newAV _((void));
OP* newAVREF _((OP* o));
OP* newBINOP _((I32 type, I32 flags, OP* first, OP* last));
OP* newCVREF _((OP* o));
OP* newCVOP _((I32 type, I32 flags, CV* cv, OP* cont));
OP* newGVOP _((I32 type, I32 flags, GV* gv));
GV* newGVgen _((char *pack));
OP* newGVREF _((I32 type, OP* o));
OP* newHVREF _((OP* o));
HV* newHV _((void));
IO* newIO _((void));
OP* newLISTOP _((I32 type, I32 flags, OP* first, OP* last));
OP* newPMOP _((I32 type, I32 flags));
OP* newPVOP _((I32 type, I32 flags, char* pv));
SV* newRV _((SV* ref));
#ifdef LEAKTEST
SV* newSV _((I32 x, STRLEN len));
#else
SV* newSV _((STRLEN len));
#endif
OP* newSVREF _((OP* o));
OP* newSVOP _((I32 type, I32 flags, SV* sv));
SV* newSViv _((IV i));
SV* newSVnv _((double n));
SV* newSVpv _((char* s, STRLEN len));
SV* newSVrv _((SV* rv, char* classname));
SV* newSVsv _((SV* old));
OP* newUNOP _((I32 type, I32 flags, OP* first));
OP * newWHILEOP _((I32 flags, I32 debuggable, LOOP* loop, OP* expr, OP* block, OP* cont));
FILE* nextargv _((GV* gv));
char* ninstr _((char* big, char* bigend, char* little, char* lend));
OP * oopsCV _((OP* o));
void op_free _((OP* arg));
void package _((OP* op));
PADOFFSET pad_alloc _((I32 optype, U32 tmptype));
PADOFFSET pad_allocmy _((char* name));
PADOFFSET pad_findmy _((char* name));
OP* oopsAV _((OP* o));
OP* oopsHV _((OP* o));
void pad_leavemy _((I32 fill));
SV* pad_sv _((PADOFFSET po));
void pad_free _((PADOFFSET po));
void pad_reset _((void));
void pad_swipe _((PADOFFSET po));
void peep _((OP* op));
PerlInterpreter* perl_alloc _((void));
I32 perl_call_argv _((char* subname, I32 flags, char** argv));
I32 perl_call_method _((char* methname, I32 flags));
I32 perl_call_pv _((char* subname, I32 flags));
I32 perl_call_sv _((SV* sv, I32 flags));
#ifdef DEPRECATED
I32 perl_callargv _((char* subname, I32 sp, I32 gimme, char** argv));
I32 perl_callpv _((char* subname, I32 sp, I32 gimme, I32 hasargs, I32 numargs));
I32 perl_callsv _((SV* sv, I32 sp, I32 gimme, I32 hasargs, I32 numargs));
#endif
void perl_construct _((PerlInterpreter* sv_interp));
void perl_destruct _((PerlInterpreter* sv_interp, int destruct_level));
void perl_free _((PerlInterpreter* sv_interp));
SV* perl_get_sv _((char* name, I32 create));
AV* perl_get_av _((char* name, I32 create));
HV* perl_get_hv _((char* name, I32 create));
CV* perl_get_cv _((char* name, I32 create));
int perl_parse _((PerlInterpreter* sv_interp, void(*xsinit)(void), int argc, char** argv, char** env));
void perl_requirepv _((char* pv));
int perl_run _((PerlInterpreter* sv_interp));
void pidgone _((int pid, int status));
void pmflag _((U16* pmfl, int ch));
OP* pmruntime _((OP* pm, OP* expr, OP* repl));
OP* pmtrans _((OP* op, OP* expr, OP* repl));
OP* pop_return _((void));
void pop_scope _((void));
OP* prepend_elem _((I32 optype, OP* head, OP* tail));
void push_return _((OP* op));
void push_scope _((void));
regexp* regcomp _((char* exp, char* xend, PMOP* pm));
OP* ref _((OP* op, I32 type));
OP* refkids _((OP* op, I32 type));
void regdump _((regexp* r));
I32 regexec _((regexp* prog, char* stringarg, char* strend, char* strbeg, I32 minend, SV* screamer, I32 safebase));
void regfree _((struct regexp* r));
char* regnext _((char* p));
char* regprop _((char* op));
void repeatcpy _((char* to, char* from, I32 len, I32 count));
char* rninstr _((char* big, char* bigend, char* little, char* lend));
int run _((void));
#ifndef safemalloc
void safefree _((char* where));
char* safemalloc _((MEM_SIZE size));
#ifndef MSDOS
char* saferealloc _((char* where, MEM_SIZE size));
#else
char* saferealloc _((char* where, unsigned long size));
#endif
#endif
#ifdef LEAKTEST
void safexfree _((char* where));
char* safexmalloc _((I32 x, MEM_SIZE size));
char* safexrealloc _((char* where, MEM_SIZE size));
#endif
#ifndef HAS_RENAME
I32 same_dirent _((char* a, char* b));
#endif
char* savepv _((char* sv));
char* savepvn _((char* sv, I32 len));
void savestack_grow _((void));
void save_aptr _((AV** aptr));
AV* save_ary _((GV* gv));
void save_clearsv _((SV** svp));
void save_delete _((HV* hv, char* key, I32 klen));
#ifndef titan /* TitanOS cc can't handle this */
void save_destructor _((void (*f)(void*), void* p));
#endif /* titan */
void save_freesv _((SV* sv));
void save_freeop _((OP* op));
void save_freepv _((char* pv));
HV* save_hash _((GV* gv));
void save_hptr _((HV** hptr));
void save_I32 _((I32* intp));
void save_int _((int* intp));
void save_item _((SV* item));
void save_list _((SV** sarg, I32 maxsarg));
void save_long _((long *longp));
void save_nogv _((GV* gv));
SV* save_scalar _((GV* gv));
void save_pptr _((char **pptr));
void save_sptr _((SV** sptr));
SV* save_svref _((SV** sptr));
OP* sawparens _((OP* o));
OP* scalar _((OP* o));
OP* scalarkids _((OP* op));
OP* scalarseq _((OP* o));
OP* scalarvoid _((OP* op));
unsigned long scan_hex _((char* start, I32 len, I32* retlen));
char* scan_num _((char* s));
unsigned long scan_oct _((char* start, I32 len, I32* retlen));
#ifdef NOTDEF /* See toke.c pp_ctl.c and op.c */
void scan_prefix _((PMOP* pm, char* string, I32 len));
#endif
OP* scope _((OP* o));
char* screaminstr _((SV* bigsv, SV* littlesv));
#ifndef VMS
I32 setenv_getix _((char* nam));
#endif
VOIDRET sighandler _((int sig));
SV** stack_grow _((SV** sp, SV**p, int n));
int start_subparse _((void));
bool sv_2bool _((SV* sv));
CV* sv_2cv _((SV* sv, HV** st, GV** gvp, I32 lref));
IO* sv_2io _((SV* sv));
IV sv_2iv _((SV* sv));
SV* sv_2mortal _((SV* sv));
double sv_2nv _((SV* sv));
char* sv_2pv _((SV* sv, STRLEN* lp));
int sv_backoff _((SV* sv));
SV* sv_bless _((SV* sv, HV* stash));
void sv_catpv _((SV* sv, char* ptr));
void sv_catpvn _((SV* sv, char* ptr, STRLEN len));
void sv_catsv _((SV* dsv, SV* ssv));
void sv_chop _((SV* sv, char* ptr));
void sv_clean_all _((void));
void sv_clean_objs _((void));
void sv_clear _((SV* sv));
I32 sv_cmp _((SV* sv1, SV* sv2));
void sv_dec _((SV* sv));
void sv_dump _((SV* sv));
I32 sv_eq _((SV* sv1, SV* sv2));
void sv_free _((SV* sv));
char* sv_gets _((SV* sv, FILE* fp, I32 append));
#ifndef DOSISH
char* sv_grow _((SV* sv, I32 newlen));
#else
char* sv_grow _((SV* sv, unsigned long newlen));
#endif
void sv_inc _((SV* sv));
void sv_insert _((SV* bigsv, STRLEN offset, STRLEN len, char* little, STRLEN littlelen));
int sv_isa _((SV* sv, char* name));
int sv_isobject _((SV* sv));
STRLEN sv_len _((SV* sv));
void sv_magic _((SV* sv, SV* obj, int how, char* name, I32 namlen));
SV* sv_mortalcopy _((SV* oldsv));
SV* sv_newmortal _((void));
SV* sv_newref _((SV* sv));
char * sv_peek _((SV* sv));
char * sv_pvn_force _((SV* sv, STRLEN* lp));
char* sv_reftype _((SV* sv, int ob));
void sv_replace _((SV* sv, SV* nsv));
void sv_report_used _((void));
void sv_reset _((char* s, HV* stash));
void sv_setiv _((SV* sv, IV num));
void sv_setnv _((SV* sv, double num));
SV* sv_setref_iv _((SV *rv, char *classname, IV iv));
SV* sv_setref_nv _((SV *rv, char *classname, double nv));
SV* sv_setref_pv _((SV *rv, char *classname, void* pv));
SV* sv_setref_pvn _((SV *rv, char *classname, char* pv, I32 n));
void sv_setpv _((SV* sv, char* ptr));
void sv_setpvn _((SV* sv, char* ptr, STRLEN len));
void sv_setsv _((SV* dsv, SV* ssv));
int sv_unmagic _((SV* sv, int type));
void sv_unref _((SV* sv));
bool sv_upgrade _((SV* sv, U32 mt));
void sv_usepvn _((SV* sv, char* ptr, STRLEN len));
void taint_env _((void));
void taint_not _((char *s));
void taint_proper _((char* f, char* s));
I32 unlnk _((char* f));
void utilize _((int aver, OP* id, OP* arg));
I32 wait4pid _((int pid, int* statusp, int flags));
void warn _((char* pat,...)) __attribute__((format(printf,1,2)));
void watch _((char **addr));
I32 whichsig _((char* sig));
int yyerror _((char* s));
int yylex _((void));
int yyparse _((void));
int yywarn _((char* s));
|