Commit | Line | Data |
---|---|---|
22239a37 NIS |
1 | START_EXTERN_C |
2 | ||
fed7345c | 3 | #ifndef NEXT30_NO_ATTRIBUTE |
ecfc5424 AD |
4 | #ifndef HASATTRIBUTE /* disable GNU-cc attribute checking? */ |
5 | #ifdef __attribute__ /* Avoid possible redefinition errors */ | |
a0d0e21e | 6 | #undef __attribute__ |
ecfc5424 | 7 | #endif |
a0d0e21e | 8 | #define __attribute__(attr) |
aeea060c | 9 | #endif |
a0d0e21e LW |
10 | #endif |
11 | #ifdef OVERLOAD | |
12 | SV* amagic_call _((SV* left,SV* right,int method,int dir)); | |
44a8e56a | 13 | bool Gv_AMupdate _((HV* stash)); |
a0d0e21e LW |
14 | #endif /* OVERLOAD */ |
15 | OP* append_elem _((I32 optype, OP* head, OP* tail)); | |
16 | OP* append_list _((I32 optype, LISTOP* first, LISTOP* last)); | |
17 | I32 apply _((I32 type, SV** mark, SV** sp)); | |
11343788 | 18 | void assertref _((OP* o)); |
c750a3ec | 19 | SV* avhv_delete _((AV *ar, char* key, U32 klen, I32 flags)); |
97fcbf96 | 20 | SV* avhv_delete_ent _((AV *ar, SV* keysv, I32 flags, U32 hash)); |
c750a3ec | 21 | bool avhv_exists _((AV *ar, char* key, U32 klen)); |
97fcbf96 | 22 | bool avhv_exists_ent _((AV *ar, SV* keysv, U32 hash)); |
c750a3ec | 23 | SV** avhv_fetch _((AV *ar, char* key, U32 klen, I32 lval)); |
97fcbf96 | 24 | SV** avhv_fetch_ent _((AV *ar, SV* keysv, I32 lval, U32 hash)); |
c750a3ec MB |
25 | I32 avhv_iterinit _((AV *ar)); |
26 | HE* avhv_iternext _((AV *ar)); | |
27 | SV * avhv_iternextsv _((AV *ar, char** key, I32* retlen)); | |
28 | SV* avhv_iterval _((AV *ar, HE* entry)); | |
5d5aaa5e | 29 | HV* avhv_keys _((AV *ar)); |
c750a3ec | 30 | SV** avhv_store _((AV *ar, char* key, U32 klen, SV* val, U32 hash)); |
a0d0e21e LW |
31 | void av_clear _((AV* ar)); |
32 | void av_extend _((AV* ar, I32 key)); | |
33 | AV* av_fake _((I32 size, SV** svp)); | |
34 | SV** av_fetch _((AV* ar, I32 key, I32 lval)); | |
35 | void av_fill _((AV* ar, I32 fill)); | |
36 | I32 av_len _((AV* ar)); | |
37 | AV* av_make _((I32 size, SV** svp)); | |
38 | SV* av_pop _((AV* ar)); | |
39 | void av_push _((AV* ar, SV* val)); | |
fb73857a | 40 | void av_reify _((AV* ar)); |
a0d0e21e LW |
41 | SV* av_shift _((AV* ar)); |
42 | SV** av_store _((AV* ar, I32 key, SV* val)); | |
43 | void av_undef _((AV* ar)); | |
44 | void av_unshift _((AV* ar, I32 num)); | |
45 | OP* bind_match _((I32 type, OP* left, OP* pat)); | |
36477c24 | 46 | OP* block_end _((I32 floor, OP* seq)); |
54310121 | 47 | I32 block_gimme _((void)); |
55497cff | 48 | int block_start _((int full)); |
45b989d7 | 49 | void boot_core_UNIVERSAL _((void)); |
68dc0745 | 50 | void call_list _((I32 oldscope, AV* list)); |
61bb5906 | 51 | I32 cando _((I32 bit, I32 effective, Stat_t* statbufp)); |
a0d0e21e LW |
52 | #ifndef CASTNEGFLOAT |
53 | U32 cast_ulong _((double f)); | |
54 | #endif | |
55 | #if !defined(HAS_TRUNCATE) && !defined(HAS_CHSIZE) && defined(F_FREESP) | |
45b989d7 | 56 | I32 my_chsize _((int fd, Off_t length)); |
a0d0e21e | 57 | #endif |
46fc3d4c | 58 | OP* ck_gvconst _((OP* o)); |
5dc0d613 | 59 | OP* ck_retarget _((OP* o)); |
f93b4edd MB |
60 | #ifdef USE_THREADS |
61 | MAGIC * condpair_magic _((SV *sv)); | |
62 | #endif | |
11343788 | 63 | OP* convert _((I32 optype, I32 flags, OP* o)); |
fc36a67e | 64 | void croak _((const char* pat,...)) __attribute__((noreturn)); |
3fe9a6f1 | 65 | void cv_ckproto _((CV* cv, GV* gv, char* p)); |
748a9306 | 66 | CV* cv_clone _((CV* proto)); |
760ac839 | 67 | SV* cv_const_sv _((CV* cv)); |
a0d0e21e LW |
68 | void cv_undef _((CV* cv)); |
69 | #ifdef DEBUGGING | |
c09156bb | 70 | void cx_dump _((PERL_CONTEXT* cs)); |
a0d0e21e | 71 | #endif |
46fc3d4c | 72 | SV* filter_add _((filter_t funcp, SV* datasv)); |
16d20bd9 | 73 | void filter_del _((filter_t funcp)); |
46fc3d4c | 74 | I32 filter_read _((int idx, SV* buffer, int maxlen)); |
31fb1209 NIS |
75 | char ** get_op_descs _((void)); |
76 | char ** get_op_names _((void)); | |
a0d0e21e | 77 | I32 cxinc _((void)); |
71be2cbc | 78 | void deb _((const char* pat,...)) __attribute__((format(printf,1,2))); |
a0d0e21e | 79 | void deb_growlevel _((void)); |
11343788 | 80 | I32 debop _((OP* o)); |
a0d0e21e LW |
81 | I32 debstackptrs _((void)); |
82 | #ifdef DEBUGGING | |
83 | void debprofdump _((void)); | |
84 | #endif | |
85 | I32 debstack _((void)); | |
fc36a67e | 86 | char* delimcpy _((char* to, char* toend, char* from, char* fromend, |
87 | int delim, I32* retlen)); | |
a0d0e21e | 88 | void deprecate _((char* s)); |
fc36a67e | 89 | OP* die _((const char* pat,...)); |
a0d0e21e LW |
90 | OP* die_where _((char* message)); |
91 | void dounwind _((I32 cxix)); | |
92 | bool do_aexec _((SV* really, SV** mark, SV** sp)); | |
93 | void do_chop _((SV* asv, SV* sv)); | |
45b989d7 | 94 | bool do_close _((GV* gv, bool not_implicit)); |
a0d0e21e LW |
95 | bool do_eof _((GV* gv)); |
96 | bool do_exec _((char* cmd)); | |
97 | void do_execfree _((void)); | |
98 | #if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM) | |
99 | I32 do_ipcctl _((I32 optype, SV** mark, SV** sp)); | |
100 | I32 do_ipcget _((I32 optype, SV** mark, SV** sp)); | |
101 | #endif | |
102 | void do_join _((SV* sv, SV* del, SV** mark, SV** sp)); | |
11343788 | 103 | OP* do_kv _((ARGSproto)); |
a0d0e21e LW |
104 | #if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM) |
105 | I32 do_msgrcv _((SV** mark, SV** sp)); | |
106 | I32 do_msgsnd _((SV** mark, SV** sp)); | |
107 | #endif | |
c07a80fd | 108 | bool do_open _((GV* gv, char* name, I32 len, |
760ac839 | 109 | int as_raw, int rawmode, int rawperm, PerlIO* supplied_fp)); |
a0d0e21e | 110 | void do_pipe _((SV* sv, GV* rgv, GV* wgv)); |
760ac839 | 111 | bool do_print _((SV* sv, PerlIO* fp)); |
46fc3d4c | 112 | OP* do_readline _((void)); |
a0d0e21e LW |
113 | I32 do_chomp _((SV* sv)); |
114 | bool do_seek _((GV* gv, long pos, int whence)); | |
115 | #if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM) | |
116 | I32 do_semop _((SV** mark, SV** sp)); | |
117 | I32 do_shmio _((I32 optype, SV** mark, SV** sp)); | |
118 | #endif | |
119 | void do_sprintf _((SV* sv, I32 len, SV** sarg)); | |
8903cb82 | 120 | long do_sysseek _((GV* gv, long pos, int whence)); |
a0d0e21e LW |
121 | long do_tell _((GV* gv)); |
122 | I32 do_trans _((SV* sv, OP* arg)); | |
123 | void do_vecset _((SV* sv)); | |
124 | void do_vop _((I32 optype, SV* sv, SV* left, SV* right)); | |
e50aee73 | 125 | I32 dowantarray _((void)); |
a0d0e21e LW |
126 | void dump_all _((void)); |
127 | void dump_eval _((void)); | |
748a9306 | 128 | #ifdef DUMP_FDS /* See util.c */ |
a0d0e21e LW |
129 | int dump_fds _((char* s)); |
130 | #endif | |
131 | void dump_form _((GV* gv)); | |
132 | void dump_gv _((GV* gv)); | |
8eccb90b | 133 | #ifdef MYMALLOC |
c07a80fd | 134 | void dump_mstats _((char* s)); |
8eccb90b | 135 | #endif |
a0d0e21e LW |
136 | void dump_op _((OP* arg)); |
137 | void dump_pm _((PMOP* pm)); | |
138 | void dump_packsubs _((HV* stash)); | |
139 | void dump_sub _((GV* gv)); | |
bbce6d69 | 140 | void fbm_compile _((SV* sv)); |
a0d0e21e | 141 | char* fbm_instr _((unsigned char* big, unsigned char* bigend, SV* littlesv)); |
aeea060c | 142 | #ifdef USE_THREADS |
54b9620d | 143 | PADOFFSET find_threadsv _((char *name)); |
aeea060c | 144 | #endif |
a0d0e21e | 145 | OP* force_list _((OP* arg)); |
46fc3d4c | 146 | OP* fold_constants _((OP* arg)); |
147 | char* form _((const char* pat, ...)); | |
a0d0e21e | 148 | void free_tmps _((void)); |
11343788 | 149 | OP* gen_constant_list _((OP* o)); |
a0d0e21e LW |
150 | void gp_free _((GV* gv)); |
151 | GP* gp_ref _((GP* gp)); | |
152 | GV* gv_AVadd _((GV* gv)); | |
153 | GV* gv_HVadd _((GV* gv)); | |
154 | GV* gv_IOadd _((GV* gv)); | |
54310121 | 155 | GV* gv_autoload4 _((HV* stash, char* name, STRLEN len, I32 method)); |
a0d0e21e LW |
156 | void gv_check _((HV* stash)); |
157 | void gv_efullname _((SV* sv, GV* gv)); | |
ab4ed645 | 158 | void gv_efullname3 _((SV* sv, GV* gv, char* prefix)); |
a0d0e21e LW |
159 | GV* gv_fetchfile _((char* name)); |
160 | GV* gv_fetchmeth _((HV* stash, char* name, STRLEN len, I32 level)); | |
161 | GV* gv_fetchmethod _((HV* stash, char* name)); | |
dc848c6f | 162 | GV* gv_fetchmethod_autoload _((HV* stash, char* name, I32 autoload)); |
a0d0e21e LW |
163 | GV* gv_fetchpv _((char* name, I32 add, I32 sv_type)); |
164 | void gv_fullname _((SV* sv, GV* gv)); | |
ab4ed645 | 165 | void gv_fullname3 _((SV* sv, GV* gv, char* prefix)); |
46fc3d4c | 166 | void gv_init _((GV* gv, HV* stash, char* name, STRLEN len, int multi)); |
a0d0e21e | 167 | HV* gv_stashpv _((char* name, I32 create)); |
45b989d7 | 168 | HV* gv_stashpvn _((char* name, U32 namelen, I32 create)); |
a0d0e21e | 169 | HV* gv_stashsv _((SV* sv, I32 create)); |
a0d0e21e | 170 | void hv_clear _((HV* tb)); |
68dc0745 | 171 | void hv_delayfree_ent _((HV* hv, HE* entry)); |
748a9306 | 172 | SV* hv_delete _((HV* tb, char* key, U32 klen, I32 flags)); |
45b989d7 | 173 | SV* hv_delete_ent _((HV* tb, SV* key, I32 flags, U32 hash)); |
a0d0e21e | 174 | bool hv_exists _((HV* tb, char* key, U32 klen)); |
45b989d7 | 175 | bool hv_exists_ent _((HV* tb, SV* key, U32 hash)); |
a0d0e21e | 176 | SV** hv_fetch _((HV* tb, char* key, U32 klen, I32 lval)); |
45b989d7 | 177 | HE* hv_fetch_ent _((HV* tb, SV* key, I32 lval, U32 hash)); |
68dc0745 | 178 | void hv_free_ent _((HV* hv, HE* entry)); |
a0d0e21e LW |
179 | I32 hv_iterinit _((HV* tb)); |
180 | char* hv_iterkey _((HE* entry, I32* retlen)); | |
45b989d7 | 181 | SV* hv_iterkeysv _((HE* entry)); |
a0d0e21e | 182 | HE* hv_iternext _((HV* tb)); |
45b989d7 | 183 | SV* hv_iternextsv _((HV* hv, char** key, I32* retlen)); |
a0d0e21e | 184 | SV* hv_iterval _((HV* tb, HE* entry)); |
ab4ed645 | 185 | void hv_ksplit _((HV* hv, IV newmax)); |
a0d0e21e LW |
186 | void hv_magic _((HV* hv, GV* gv, int how)); |
187 | SV** hv_store _((HV* tb, char* key, U32 klen, SV* val, U32 hash)); | |
45b989d7 | 188 | HE* hv_store_ent _((HV* tb, SV* key, SV* val, U32 hash)); |
a0d0e21e | 189 | void hv_undef _((HV* tb)); |
bbce6d69 | 190 | I32 ibcmp _((char* a, char* b, I32 len)); |
191 | I32 ibcmp_locale _((char* a, char* b, I32 len)); | |
a0d0e21e | 192 | I32 ingroup _((I32 testgid, I32 effective)); |
11343788 | 193 | void init_stacks _((ARGSproto)); |
bbce6d69 | 194 | U32 intro_my _((void)); |
a0d0e21e | 195 | char* instr _((char* big, char* little)); |
8eccb90b | 196 | bool io_close _((IO* io)); |
a0d0e21e LW |
197 | OP* invert _((OP* cmd)); |
198 | OP* jmaybe _((OP* arg)); | |
199 | I32 keyword _((char* d, I32 len)); | |
200 | void leave_scope _((I32 base)); | |
201 | void lex_end _((void)); | |
46fc3d4c | 202 | void lex_start _((SV* line)); |
11343788 | 203 | OP* linklist _((OP* o)); |
a0d0e21e LW |
204 | OP* list _((OP* o)); |
205 | OP* listkids _((OP* o)); | |
206 | OP* localize _((OP* arg, I32 lexical)); | |
207 | I32 looks_like_number _((SV* sv)); | |
208 | int magic_clearenv _((SV* sv, MAGIC* mg)); | |
3e3baf6d | 209 | int magic_clear_all_env _((SV* sv, MAGIC* mg)); |
a0d0e21e | 210 | int magic_clearpack _((SV* sv, MAGIC* mg)); |
45b989d7 | 211 | int magic_clearsig _((SV* sv, MAGIC* mg)); |
5f05dabc | 212 | int magic_existspack _((SV* sv, MAGIC* mg)); |
68dc0745 | 213 | int magic_freedefelem _((SV* sv, MAGIC* mg)); |
c277df42 | 214 | int magic_freeregexp _((SV* sv, MAGIC* mg)); |
a0d0e21e LW |
215 | int magic_get _((SV* sv, MAGIC* mg)); |
216 | int magic_getarylen _((SV* sv, MAGIC* mg)); | |
68dc0745 | 217 | int magic_getdefelem _((SV* sv, MAGIC* mg)); |
a0d0e21e | 218 | int magic_getglob _((SV* sv, MAGIC* mg)); |
68dc0745 | 219 | int magic_getpack _((SV* sv, MAGIC* mg)); |
a0d0e21e | 220 | int magic_getpos _((SV* sv, MAGIC* mg)); |
45b989d7 | 221 | int magic_getsig _((SV* sv, MAGIC* mg)); |
a0d0e21e LW |
222 | int magic_gettaint _((SV* sv, MAGIC* mg)); |
223 | int magic_getuvar _((SV* sv, MAGIC* mg)); | |
224 | U32 magic_len _((SV* sv, MAGIC* mg)); | |
f93b4edd MB |
225 | #ifdef USE_THREADS |
226 | int magic_mutexfree _((SV* sv, MAGIC* mg)); | |
227 | #endif /* USE_THREADS */ | |
a0d0e21e LW |
228 | int magic_nextpack _((SV* sv, MAGIC* mg, SV* key)); |
229 | int magic_set _((SV* sv, MAGIC* mg)); | |
230 | #ifdef OVERLOAD | |
231 | int magic_setamagic _((SV* sv, MAGIC* mg)); | |
232 | #endif /* OVERLOAD */ | |
233 | int magic_setarylen _((SV* sv, MAGIC* mg)); | |
234 | int magic_setbm _((SV* sv, MAGIC* mg)); | |
235 | int magic_setdbline _((SV* sv, MAGIC* mg)); | |
44a8e56a | 236 | #ifdef USE_LOCALE_COLLATE |
bbce6d69 | 237 | int magic_setcollxfrm _((SV* sv, MAGIC* mg)); |
44a8e56a | 238 | #endif |
68dc0745 | 239 | int magic_setdefelem _((SV* sv, MAGIC* mg)); |
a0d0e21e | 240 | int magic_setenv _((SV* sv, MAGIC* mg)); |
55497cff | 241 | int magic_setfm _((SV* sv, MAGIC* mg)); |
a0d0e21e LW |
242 | int magic_setisa _((SV* sv, MAGIC* mg)); |
243 | int magic_setglob _((SV* sv, MAGIC* mg)); | |
244 | int magic_setmglob _((SV* sv, MAGIC* mg)); | |
ab4ed645 | 245 | int magic_setnkeys _((SV* sv, MAGIC* mg)); |
a0d0e21e LW |
246 | int magic_setpack _((SV* sv, MAGIC* mg)); |
247 | int magic_setpos _((SV* sv, MAGIC* mg)); | |
248 | int magic_setsig _((SV* sv, MAGIC* mg)); | |
249 | int magic_setsubstr _((SV* sv, MAGIC* mg)); | |
250 | int magic_settaint _((SV* sv, MAGIC* mg)); | |
251 | int magic_setuvar _((SV* sv, MAGIC* mg)); | |
252 | int magic_setvec _((SV* sv, MAGIC* mg)); | |
fb73857a | 253 | int magic_set_all_env _((SV* sv, MAGIC* mg)); |
93965878 | 254 | U32 magic_sizepack _((SV* sv, MAGIC* mg)); |
a0d0e21e LW |
255 | int magic_wipepack _((SV* sv, MAGIC* mg)); |
256 | void magicname _((char* sym, char* name, I32 namlen)); | |
257 | int main _((int argc, char** argv, char** env)); | |
a0d0e21e | 258 | void markstack_grow _((void)); |
5f05dabc | 259 | #ifdef USE_LOCALE_COLLATE |
46fc3d4c | 260 | char* mem_collxfrm _((const char* s, STRLEN len, STRLEN* xlen)); |
5f05dabc | 261 | #endif |
71be2cbc | 262 | char* mess _((const char* pat, va_list* args)); |
a0d0e21e | 263 | int mg_clear _((SV* sv)); |
46fc3d4c | 264 | int mg_copy _((SV* , SV* , char* , I32)); |
a0d0e21e LW |
265 | MAGIC* mg_find _((SV* sv, int type)); |
266 | int mg_free _((SV* sv)); | |
267 | int mg_get _((SV* sv)); | |
268 | U32 mg_len _((SV* sv)); | |
269 | void mg_magical _((SV* sv)); | |
270 | int mg_set _((SV* sv)); | |
93965878 | 271 | I32 mg_size _((SV* sv)); |
11343788 | 272 | OP* mod _((OP* o, I32 type)); |
a0d0e21e | 273 | char* moreswitches _((char* s)); |
5dc0d613 | 274 | OP* my _((OP* o)); |
5f05dabc | 275 | #if !defined(HAS_BCOPY) || !defined(HAS_SAFE_BCOPY) |
a0d0e21e | 276 | char* my_bcopy _((char* from, char* to, I32 len)); |
5f05dabc | 277 | #endif |
a0d0e21e LW |
278 | #if !defined(HAS_BZERO) && !defined(HAS_MEMSET) |
279 | char* my_bzero _((char* loc, I32 len)); | |
85e6fe83 | 280 | #endif |
748a9306 | 281 | void my_exit _((U32 status)) __attribute__((noreturn)); |
f86702cc | 282 | void my_failure_exit _((void)) __attribute__((noreturn)); |
11343788 | 283 | I32 my_lstat _((ARGSproto)); |
5f05dabc | 284 | #if !defined(HAS_MEMCMP) || !defined(HAS_SANE_MEMCMP) |
36477c24 | 285 | I32 my_memcmp _((char* s1, char* s2, I32 len)); |
a0d0e21e | 286 | #endif |
fc36a67e | 287 | #if !defined(HAS_MEMSET) |
288 | void* my_memset _((char* loc, I32 ch, I32 len)); | |
289 | #endif | |
760ac839 LW |
290 | I32 my_pclose _((PerlIO* ptr)); |
291 | PerlIO* my_popen _((char* cmd, char* mode)); | |
a0d0e21e | 292 | void my_setenv _((char* nam, char* val)); |
11343788 | 293 | I32 my_stat _((ARGSproto)); |
a0d0e21e LW |
294 | #ifdef MYSWAP |
295 | short my_swap _((short s)); | |
748a9306 LW |
296 | long my_htonl _((long l)); |
297 | long my_ntohl _((long l)); | |
a0d0e21e LW |
298 | #endif |
299 | void my_unexec _((void)); | |
11343788 MB |
300 | OP* newANONLIST _((OP* o)); |
301 | OP* newANONHASH _((OP* o)); | |
4633a7c4 | 302 | OP* newANONSUB _((I32 floor, OP* proto, OP* block)); |
a0d0e21e | 303 | OP* newASSIGNOP _((I32 flags, OP* left, I32 optype, OP* right)); |
1aef975c | 304 | OP* newCONDOP _((I32 flags, OP* expr, OP* trueop, OP* falseop)); |
11343788 | 305 | void newFORM _((I32 floor, OP* o, OP* block)); |
a0d0e21e LW |
306 | OP* newFOROP _((I32 flags, char* label, line_t forline, OP* scalar, OP* expr, OP*block, OP*cont)); |
307 | OP* newLOGOP _((I32 optype, I32 flags, OP* left, OP* right)); | |
308 | OP* newLOOPEX _((I32 type, OP* label)); | |
309 | OP* newLOOPOP _((I32 flags, I32 debuggable, OP* expr, OP* block)); | |
a0d0e21e LW |
310 | OP* newNULLLIST _((void)); |
311 | OP* newOP _((I32 optype, I32 flags)); | |
11343788 | 312 | void newPROG _((OP* o)); |
a0d0e21e LW |
313 | OP* newRANGE _((I32 flags, OP* left, OP* right)); |
314 | OP* newSLICEOP _((I32 flags, OP* subscript, OP* list)); | |
315 | OP* newSTATEOP _((I32 flags, char* label, OP* o)); | |
11343788 | 316 | CV* newSUB _((I32 floor, OP* o, OP* proto, OP* block)); |
46fc3d4c | 317 | CV* newXS _((char* name, void (*subaddr)(CV* cv), char* filename)); |
a0d0e21e LW |
318 | AV* newAV _((void)); |
319 | OP* newAVREF _((OP* o)); | |
320 | OP* newBINOP _((I32 type, I32 flags, OP* first, OP* last)); | |
c07a80fd | 321 | OP* newCVREF _((I32 flags, OP* o)); |
a0d0e21e | 322 | OP* newGVOP _((I32 type, I32 flags, GV* gv)); |
46fc3d4c | 323 | GV* newGVgen _((char* pack)); |
a0d0e21e LW |
324 | OP* newGVREF _((I32 type, OP* o)); |
325 | OP* newHVREF _((OP* o)); | |
326 | HV* newHV _((void)); | |
327 | IO* newIO _((void)); | |
328 | OP* newLISTOP _((I32 type, I32 flags, OP* first, OP* last)); | |
329 | OP* newPMOP _((I32 type, I32 flags)); | |
330 | OP* newPVOP _((I32 type, I32 flags, char* pv)); | |
331 | SV* newRV _((SV* ref)); | |
fc1ce8cc | 332 | #if !defined(__GNUC__) && (defined(CRIPPLED_CC) || defined(USE_THREADS)) |
4e35701f | 333 | SV* newRV_noinc _((SV *)); |
fc1ce8cc | 334 | #endif |
79072805 | 335 | #ifdef LEAKTEST |
a0d0e21e | 336 | SV* newSV _((I32 x, STRLEN len)); |
79072805 | 337 | #else |
a0d0e21e | 338 | SV* newSV _((STRLEN len)); |
79072805 | 339 | #endif |
a0d0e21e LW |
340 | OP* newSVREF _((OP* o)); |
341 | OP* newSVOP _((I32 type, I32 flags, SV* sv)); | |
342 | SV* newSViv _((IV i)); | |
343 | SV* newSVnv _((double n)); | |
344 | SV* newSVpv _((char* s, STRLEN len)); | |
9da1e3b5 | 345 | SV* newSVpvn _((char* s, STRLEN len)); |
46fc3d4c | 346 | SV* newSVpvf _((const char* pat, ...)); |
a0d0e21e LW |
347 | SV* newSVrv _((SV* rv, char* classname)); |
348 | SV* newSVsv _((SV* old)); | |
349 | OP* newUNOP _((I32 type, I32 flags, OP* first)); | |
fb73857a | 350 | OP* newWHILEOP _((I32 flags, I32 debuggable, LOOP* loop, |
351 | I32 whileline, OP* expr, OP* block, OP* cont)); | |
aeea060c | 352 | #ifdef USE_THREADS |
52e1cb5e | 353 | struct perl_thread * new_struct_thread _((struct perl_thread *t)); |
aeea060c | 354 | #endif |
760ac839 | 355 | PerlIO* nextargv _((GV* gv)); |
a0d0e21e | 356 | char* ninstr _((char* big, char* bigend, char* little, char* lend)); |
46fc3d4c | 357 | OP* oopsCV _((OP* o)); |
a0d0e21e | 358 | void op_free _((OP* arg)); |
11343788 | 359 | void package _((OP* o)); |
a0d0e21e LW |
360 | PADOFFSET pad_alloc _((I32 optype, U32 tmptype)); |
361 | PADOFFSET pad_allocmy _((char* name)); | |
362 | PADOFFSET pad_findmy _((char* name)); | |
363 | OP* oopsAV _((OP* o)); | |
364 | OP* oopsHV _((OP* o)); | |
365 | void pad_leavemy _((I32 fill)); | |
366 | SV* pad_sv _((PADOFFSET po)); | |
367 | void pad_free _((PADOFFSET po)); | |
368 | void pad_reset _((void)); | |
369 | void pad_swipe _((PADOFFSET po)); | |
11343788 | 370 | void peep _((OP* o)); |
a0d0e21e LW |
371 | PerlInterpreter* perl_alloc _((void)); |
372 | I32 perl_call_argv _((char* subname, I32 flags, char** argv)); | |
373 | I32 perl_call_method _((char* methname, I32 flags)); | |
374 | I32 perl_call_pv _((char* subname, I32 flags)); | |
375 | I32 perl_call_sv _((SV* sv, I32 flags)); | |
a0d0e21e | 376 | void perl_construct _((PerlInterpreter* sv_interp)); |
748a9306 | 377 | void perl_destruct _((PerlInterpreter* sv_interp)); |
137443ea | 378 | SV* perl_eval_pv _((char* p, I32 croak_on_error)); |
4633a7c4 | 379 | I32 perl_eval_sv _((SV* sv, I32 flags)); |
a0d0e21e LW |
380 | void perl_free _((PerlInterpreter* sv_interp)); |
381 | SV* perl_get_sv _((char* name, I32 create)); | |
382 | AV* perl_get_av _((char* name, I32 create)); | |
383 | HV* perl_get_hv _((char* name, I32 create)); | |
384 | CV* perl_get_cv _((char* name, I32 create)); | |
45b989d7 | 385 | int perl_init_i18nl10n _((int printwarn)); |
8eccb90b | 386 | int perl_init_i18nl14n _((int printwarn)); |
46fc3d4c | 387 | void perl_new_collate _((char* newcoll)); |
388 | void perl_new_ctype _((char* newctype)); | |
389 | void perl_new_numeric _((char* newcoll)); | |
36477c24 | 390 | void perl_set_numeric_local _((void)); |
391 | void perl_set_numeric_standard _((void)); | |
a0d0e21e | 392 | int perl_parse _((PerlInterpreter* sv_interp, void(*xsinit)(void), int argc, char** argv, char** env)); |
4633a7c4 LW |
393 | void perl_require_pv _((char* pv)); |
394 | #define perl_requirepv perl_require_pv | |
a0d0e21e LW |
395 | int perl_run _((PerlInterpreter* sv_interp)); |
396 | void pidgone _((int pid, int status)); | |
397 | void pmflag _((U16* pmfl, int ch)); | |
398 | OP* pmruntime _((OP* pm, OP* expr, OP* repl)); | |
11343788 | 399 | OP* pmtrans _((OP* o, OP* expr, OP* repl)); |
a0d0e21e LW |
400 | OP* pop_return _((void)); |
401 | void pop_scope _((void)); | |
402 | OP* prepend_elem _((I32 optype, OP* head, OP* tail)); | |
11343788 | 403 | void push_return _((OP* o)); |
a0d0e21e | 404 | void push_scope _((void)); |
e50aee73 | 405 | regexp* pregcomp _((char* exp, char* xend, PMOP* pm)); |
11343788 MB |
406 | OP* ref _((OP* o, I32 type)); |
407 | OP* refkids _((OP* o, I32 type)); | |
a0d0e21e | 408 | void regdump _((regexp* r)); |
c277df42 IZ |
409 | I32 pregexec _((regexp* prog, char* stringarg, char* strend, char* strbeg, I32 minend, SV* screamer, U32 nosave)); |
410 | I32 regexec_flags _((regexp* prog, char* stringarg, char* strend, char* strbeg, I32 minend, SV* screamer, void* data, U32 flags)); | |
411 | void pregfree _((struct regexp* r)); | |
412 | regnode*regnext _((regnode* p)); | |
413 | void regprop _((SV* sv, regnode* o)); | |
a0d0e21e LW |
414 | void repeatcpy _((char* to, char* from, I32 len, I32 count)); |
415 | char* rninstr _((char* big, char* bigend, char* little, char* lend)); | |
ff68c719 | 416 | Sighandler_t rsignal _((int, Sighandler_t)); |
417 | int rsignal_restore _((int, Sigsave_t*)); | |
418 | int rsignal_save _((int, Sighandler_t, Sigsave_t*)); | |
419 | Sighandler_t rsignal_state _((int)); | |
c90c0ff4 | 420 | void rxres_free _((void** rsp)); |
421 | void rxres_restore _((void** rsp, REGEXP* rx)); | |
422 | void rxres_save _((void** rsp, REGEXP* rx)); | |
a0d0e21e LW |
423 | #ifndef HAS_RENAME |
424 | I32 same_dirent _((char* a, char* b)); | |
425 | #endif | |
426 | char* savepv _((char* sv)); | |
427 | char* savepvn _((char* sv, I32 len)); | |
428 | void savestack_grow _((void)); | |
429 | void save_aptr _((AV** aptr)); | |
430 | AV* save_ary _((GV* gv)); | |
431 | void save_clearsv _((SV** svp)); | |
432 | void save_delete _((HV* hv, char* key, I32 klen)); | |
433 | #ifndef titan /* TitanOS cc can't handle this */ | |
434 | void save_destructor _((void (*f)(void*), void* p)); | |
435 | #endif /* titan */ | |
436 | void save_freesv _((SV* sv)); | |
11343788 | 437 | void save_freeop _((OP* o)); |
a0d0e21e | 438 | void save_freepv _((char* pv)); |
5f05dabc | 439 | void save_gp _((GV* gv, I32 empty)); |
a0d0e21e LW |
440 | HV* save_hash _((GV* gv)); |
441 | void save_hptr _((HV** hptr)); | |
55497cff | 442 | void save_I16 _((I16* intp)); |
a0d0e21e LW |
443 | void save_I32 _((I32* intp)); |
444 | void save_int _((int* intp)); | |
445 | void save_item _((SV* item)); | |
55497cff | 446 | void save_iv _((IV* iv)); |
a0d0e21e | 447 | void save_list _((SV** sarg, I32 maxsarg)); |
46fc3d4c | 448 | void save_long _((long* longp)); |
a0d0e21e | 449 | void save_nogv _((GV* gv)); |
462e5cf6 | 450 | void save_op _((void)); |
a0d0e21e | 451 | SV* save_scalar _((GV* gv)); |
46fc3d4c | 452 | void save_pptr _((char** pptr)); |
a0d0e21e LW |
453 | void save_sptr _((SV** sptr)); |
454 | SV* save_svref _((SV** sptr)); | |
54b9620d | 455 | SV** save_threadsv _((PADOFFSET i)); |
a0d0e21e LW |
456 | OP* sawparens _((OP* o)); |
457 | OP* scalar _((OP* o)); | |
11343788 | 458 | OP* scalarkids _((OP* o)); |
a0d0e21e | 459 | OP* scalarseq _((OP* o)); |
11343788 | 460 | OP* scalarvoid _((OP* o)); |
55497cff | 461 | UV scan_hex _((char* start, I32 len, I32* retlen)); |
a0d0e21e | 462 | char* scan_num _((char* s)); |
55497cff | 463 | UV scan_oct _((char* start, I32 len, I32* retlen)); |
a0d0e21e | 464 | OP* scope _((OP* o)); |
c277df42 | 465 | char* screaminstr _((SV* bigsv, SV* littlesv, I32 start_shift, I32 end_shift, I32 *state, I32 last)); |
a0d0e21e LW |
466 | #ifndef VMS |
467 | I32 setenv_getix _((char* nam)); | |
85e6fe83 | 468 | #endif |
46fc3d4c | 469 | void setdefout _((GV* gv)); |
71be2cbc | 470 | char* sharepvn _((char* sv, I32 len, U32 hash)); |
471 | HEK* share_hek _((char* sv, I32 len, U32 hash)); | |
ecfc5424 | 472 | Signal_t sighandler _((int sig)); |
a0d0e21e | 473 | SV** stack_grow _((SV** sp, SV**p, int n)); |
ba6d6ac9 | 474 | I32 start_subparse _((I32 is_format, U32 flags)); |
44a8e56a | 475 | void sub_crush_depth _((CV* cv)); |
a0d0e21e LW |
476 | bool sv_2bool _((SV* sv)); |
477 | CV* sv_2cv _((SV* sv, HV** st, GV** gvp, I32 lref)); | |
478 | IO* sv_2io _((SV* sv)); | |
479 | IV sv_2iv _((SV* sv)); | |
480 | SV* sv_2mortal _((SV* sv)); | |
481 | double sv_2nv _((SV* sv)); | |
482 | char* sv_2pv _((SV* sv, STRLEN* lp)); | |
ff68c719 | 483 | UV sv_2uv _((SV* sv)); |
4e35701f NIS |
484 | IV sv_iv _((SV* sv)); |
485 | UV sv_uv _((SV* sv)); | |
486 | double sv_nv _((SV* sv)); | |
487 | char * sv_pvn _((SV *, STRLEN *)); | |
488 | I32 sv_true _((SV *)); | |
4633a7c4 | 489 | void sv_add_arena _((char* ptr, U32 size, U32 flags)); |
a0d0e21e LW |
490 | int sv_backoff _((SV* sv)); |
491 | SV* sv_bless _((SV* sv, HV* stash)); | |
46fc3d4c | 492 | void sv_catpvf _((SV* sv, const char* pat, ...)); |
ef50df4b | 493 | void sv_catpvf_mg _((SV* sv, const char* pat, ...)); |
a0d0e21e | 494 | void sv_catpv _((SV* sv, char* ptr)); |
ef50df4b | 495 | void sv_catpv_mg _((SV* sv, char* ptr)); |
a0d0e21e | 496 | void sv_catpvn _((SV* sv, char* ptr, STRLEN len)); |
ef50df4b | 497 | void sv_catpvn_mg _((SV* sv, char* ptr, STRLEN len)); |
a0d0e21e | 498 | void sv_catsv _((SV* dsv, SV* ssv)); |
ef50df4b | 499 | void sv_catsv_mg _((SV* dsv, SV* ssv)); |
a0d0e21e LW |
500 | void sv_chop _((SV* sv, char* ptr)); |
501 | void sv_clean_all _((void)); | |
502 | void sv_clean_objs _((void)); | |
503 | void sv_clear _((SV* sv)); | |
504 | I32 sv_cmp _((SV* sv1, SV* sv2)); | |
bbce6d69 | 505 | I32 sv_cmp_locale _((SV* sv1, SV* sv2)); |
5f05dabc | 506 | #ifdef USE_LOCALE_COLLATE |
bbce6d69 | 507 | char* sv_collxfrm _((SV* sv, STRLEN* nxp)); |
5f05dabc | 508 | #endif |
c277df42 | 509 | OP* sv_compile_2op _((SV* sv, OP** startp, char* code, AV** avp)); |
a0d0e21e LW |
510 | void sv_dec _((SV* sv)); |
511 | void sv_dump _((SV* sv)); | |
55497cff | 512 | bool sv_derived_from _((SV* sv, char* name)); |
a0d0e21e LW |
513 | I32 sv_eq _((SV* sv1, SV* sv2)); |
514 | void sv_free _((SV* sv)); | |
4633a7c4 | 515 | void sv_free_arenas _((void)); |
760ac839 | 516 | char* sv_gets _((SV* sv, PerlIO* fp, I32 append)); |
93a17b20 | 517 | #ifndef DOSISH |
a0d0e21e | 518 | char* sv_grow _((SV* sv, I32 newlen)); |
93a17b20 | 519 | #else |
a0d0e21e | 520 | char* sv_grow _((SV* sv, unsigned long newlen)); |
93a17b20 | 521 | #endif |
a0d0e21e LW |
522 | void sv_inc _((SV* sv)); |
523 | void sv_insert _((SV* bigsv, STRLEN offset, STRLEN len, char* little, STRLEN littlelen)); | |
524 | int sv_isa _((SV* sv, char* name)); | |
525 | int sv_isobject _((SV* sv)); | |
526 | STRLEN sv_len _((SV* sv)); | |
527 | void sv_magic _((SV* sv, SV* obj, int how, char* name, I32 namlen)); | |
528 | SV* sv_mortalcopy _((SV* oldsv)); | |
529 | SV* sv_newmortal _((void)); | |
530 | SV* sv_newref _((SV* sv)); | |
46fc3d4c | 531 | char* sv_peek _((SV* sv)); |
532 | char* sv_pvn_force _((SV* sv, STRLEN* lp)); | |
a0d0e21e LW |
533 | char* sv_reftype _((SV* sv, int ob)); |
534 | void sv_replace _((SV* sv, SV* nsv)); | |
535 | void sv_report_used _((void)); | |
536 | void sv_reset _((char* s, HV* stash)); | |
46fc3d4c | 537 | void sv_setpvf _((SV* sv, const char* pat, ...)); |
ef50df4b | 538 | void sv_setpvf_mg _((SV* sv, const char* pat, ...)); |
a0d0e21e | 539 | void sv_setiv _((SV* sv, IV num)); |
ef50df4b | 540 | void sv_setiv_mg _((SV* sv, IV num)); |
84902520 | 541 | void sv_setpviv _((SV* sv, IV num)); |
ef50df4b | 542 | void sv_setpviv_mg _((SV* sv, IV num)); |
55497cff | 543 | void sv_setuv _((SV* sv, UV num)); |
ef50df4b | 544 | void sv_setuv_mg _((SV* sv, UV num)); |
a0d0e21e | 545 | void sv_setnv _((SV* sv, double num)); |
ef50df4b | 546 | void sv_setnv_mg _((SV* sv, double num)); |
46fc3d4c | 547 | SV* sv_setref_iv _((SV* rv, char* classname, IV iv)); |
548 | SV* sv_setref_nv _((SV* rv, char* classname, double nv)); | |
549 | SV* sv_setref_pv _((SV* rv, char* classname, void* pv)); | |
550 | SV* sv_setref_pvn _((SV* rv, char* classname, char* pv, I32 n)); | |
71be2cbc | 551 | void sv_setpv _((SV* sv, const char* ptr)); |
ef50df4b | 552 | void sv_setpv_mg _((SV* sv, const char* ptr)); |
71be2cbc | 553 | void sv_setpvn _((SV* sv, const char* ptr, STRLEN len)); |
ef50df4b | 554 | void sv_setpvn_mg _((SV* sv, const char* ptr, STRLEN len)); |
a0d0e21e | 555 | void sv_setsv _((SV* dsv, SV* ssv)); |
ef50df4b | 556 | void sv_setsv_mg _((SV* dsv, SV* ssv)); |
bbce6d69 | 557 | void sv_taint _((SV* sv)); |
558 | bool sv_tainted _((SV* sv)); | |
a0d0e21e LW |
559 | int sv_unmagic _((SV* sv, int type)); |
560 | void sv_unref _((SV* sv)); | |
bbce6d69 | 561 | void sv_untaint _((SV* sv)); |
a0d0e21e LW |
562 | bool sv_upgrade _((SV* sv, U32 mt)); |
563 | void sv_usepvn _((SV* sv, char* ptr, STRLEN len)); | |
ef50df4b | 564 | void sv_usepvn_mg _((SV* sv, char* ptr, STRLEN len)); |
46fc3d4c | 565 | void sv_vcatpvfn _((SV* sv, const char* pat, STRLEN patlen, |
566 | va_list* args, SV** svargs, I32 svmax, | |
567 | bool *used_locale)); | |
568 | void sv_vsetpvfn _((SV* sv, const char* pat, STRLEN patlen, | |
569 | va_list* args, SV** svargs, I32 svmax, | |
570 | bool *used_locale)); | |
a0d0e21e | 571 | void taint_env _((void)); |
71be2cbc | 572 | void taint_proper _((const char* f, char* s)); |
16d20bd9 | 573 | #ifdef UNLINK_ALL_VERSIONS |
a0d0e21e | 574 | I32 unlnk _((char* f)); |
16d20bd9 | 575 | #endif |
77a005ab MB |
576 | #ifdef USE_THREADS |
577 | void unlock_condpair _((void* svv)); | |
578 | #endif | |
71be2cbc | 579 | void unsharepvn _((char* sv, I32 len, U32 hash)); |
580 | void unshare_hek _((HEK* hek)); | |
45b989d7 | 581 | void utilize _((int aver, I32 floor, OP* version, OP* id, OP* arg)); |
68dc0745 | 582 | void vivify_defelem _((SV* sv)); |
583 | void vivify_ref _((SV* sv, U32 to_what)); | |
a0d0e21e | 584 | I32 wait4pid _((int pid, int* statusp, int flags)); |
fc36a67e | 585 | void warn _((const char* pat,...)); |
46fc3d4c | 586 | void watch _((char** addr)); |
a0d0e21e LW |
587 | I32 whichsig _((char* sig)); |
588 | int yyerror _((char* s)); | |
589 | int yylex _((void)); | |
590 | int yyparse _((void)); | |
591 | int yywarn _((char* s)); | |
55497cff | 592 | |
bbce6d69 | 593 | #ifndef MYMALLOC |
594 | Malloc_t safemalloc _((MEM_SIZE nbytes)); | |
595 | Malloc_t safecalloc _((MEM_SIZE elements, MEM_SIZE size)); | |
596 | Malloc_t saferealloc _((Malloc_t where, MEM_SIZE nbytes)); | |
597 | Free_t safefree _((Malloc_t where)); | |
598 | #endif | |
599 | ||
55497cff | 600 | #ifdef LEAKTEST |
601 | Malloc_t safexmalloc _((I32 x, MEM_SIZE size)); | |
602 | Malloc_t safexcalloc _((I32 x, MEM_SIZE elements, MEM_SIZE size)); | |
603 | Malloc_t safexrealloc _((Malloc_t where, MEM_SIZE size)); | |
604 | void safexfree _((Malloc_t where)); | |
605 | #endif | |
22239a37 NIS |
606 | |
607 | #ifdef PERL_GLOBAL_STRUCT | |
608 | struct perl_vars *Perl_GetVars _((void)); | |
609 | #endif | |
610 | ||
611 | END_EXTERN_C |