1 : Lines are of the form:
2 : flags|return_type|function_name|arg1|arg2|...|argN
4 : A line may be continued on another by ending it with a backslash.
5 : Leading and trailing whitespace will be ignored in each component.
7 : flags are single letters with following meanings:
8 : A member of public API
9 : m Implemented as a macro - no export, no proto, no #define
10 : d function has documentation with its source
11 : s static function, should have an S_ prefix in source
13 : n has no implicit interpreter/thread context argument
14 : p function has a Perl_ prefix
15 : f function takes printf style format string, varargs
16 : r function never returns
17 : o has no compatibility macro (#define foo Perl_foo)
21 : Individual flags may be separated by whitespace.
23 : New global functions should be added at the end for binary compatibility
24 : in some configurations.
28 #if defined(PERL_IMPLICIT_SYS)
29 Ano |PerlInterpreter* |perl_alloc_using \
30 |struct IPerlMem* m|struct IPerlMem* ms \
31 |struct IPerlMem* mp|struct IPerlEnv* e \
32 |struct IPerlStdIO* io|struct IPerlLIO* lio \
33 |struct IPerlDir* d|struct IPerlSock* s \
36 Anod |PerlInterpreter* |perl_alloc
37 Anod |void |perl_construct |PerlInterpreter* interp
38 Anod |int |perl_destruct |PerlInterpreter* interp
39 Anod |void |perl_free |PerlInterpreter* interp
40 Anod |int |perl_run |PerlInterpreter* interp
41 Anod |int |perl_parse |PerlInterpreter* interp|XSINIT_t xsinit \
42 |int argc|char** argv|char** env
43 #if defined(USE_ITHREADS)
44 Anod |PerlInterpreter*|perl_clone|PerlInterpreter* interp, UV flags
45 # if defined(PERL_IMPLICIT_SYS)
46 Ano |PerlInterpreter*|perl_clone_using|PerlInterpreter *interp|UV flags \
47 |struct IPerlMem* m|struct IPerlMem* ms \
48 |struct IPerlMem* mp|struct IPerlEnv* e \
49 |struct IPerlStdIO* io|struct IPerlLIO* lio \
50 |struct IPerlDir* d|struct IPerlSock* s \
55 Anop |Malloc_t|malloc |MEM_SIZE nbytes
56 Anop |Malloc_t|calloc |MEM_SIZE elements|MEM_SIZE size
57 Anop |Malloc_t|realloc |Malloc_t where|MEM_SIZE nbytes
58 Anop |Free_t |mfree |Malloc_t where
60 np |MEM_SIZE|malloced_size |void *p
63 Anp |void* |get_context
64 Anp |void |set_context |void *thx
68 /* functions with flag 'n' should come before here */
70 # include "pp_proto.h"
71 Ap |SV* |amagic_call |SV* left|SV* right|int method|int dir
72 Ap |bool |Gv_AMupdate |HV* stash
73 Ap |CV* |gv_handler |HV* stash|I32 id
74 p |OP* |append_elem |I32 optype|OP* head|OP* tail
75 p |OP* |append_list |I32 optype|LISTOP* first|LISTOP* last
76 p |I32 |apply |I32 type|SV** mark|SV** sp
77 ApM |void |apply_attrs_string|char *stashpv|CV *cv|char *attrstr|STRLEN len
78 Apd |void |av_clear |AV* ar
79 Apd |SV* |av_delete |AV* ar|I32 key|I32 flags
80 Apd |bool |av_exists |AV* ar|I32 key
81 Apd |void |av_extend |AV* ar|I32 key
82 p |AV* |av_fake |I32 size|SV** svp
83 Apd |SV** |av_fetch |AV* ar|I32 key|I32 lval
84 Apd |void |av_fill |AV* ar|I32 fill
85 Apd |I32 |av_len |AV* ar
86 Apd |AV* |av_make |I32 size|SV** svp
87 Apd |SV* |av_pop |AV* ar
88 Apd |void |av_push |AV* ar|SV* val
89 p |void |av_reify |AV* ar
90 Apd |SV* |av_shift |AV* ar
91 Apd |SV** |av_store |AV* ar|I32 key|SV* val
92 Apd |void |av_undef |AV* ar
93 Apd |void |av_unshift |AV* ar|I32 num
94 p |OP* |bind_match |I32 type|OP* left|OP* pat
95 p |OP* |block_end |I32 floor|OP* seq
97 p |int |block_start |int full
98 p |void |boot_core_UNIVERSAL
99 p |void |boot_core_PerlIO
100 Ap |void |call_list |I32 oldscope|AV* av_list
101 p |bool |cando |Mode_t mode|Uid_t effective|Stat_t* statbufp
102 Ap |U32 |cast_ulong |NV f
103 Ap |I32 |cast_i32 |NV f
104 Ap |IV |cast_iv |NV f
105 Ap |UV |cast_uv |NV f
106 #if !defined(HAS_TRUNCATE) && !defined(HAS_CHSIZE) && defined(F_FREESP)
107 Ap |I32 |my_chsize |int fd|Off_t length
109 p |OP* |convert |I32 optype|I32 flags|OP* o
110 Afprd |void |croak |const char* pat|...
111 Apr |void |vcroak |const char* pat|va_list* args
112 #if defined(PERL_IMPLICIT_CONTEXT)
113 Afnrp |void |croak_nocontext|const char* pat|...
114 Afnp |OP* |die_nocontext |const char* pat|...
115 Afnp |void |deb_nocontext |const char* pat|...
116 Afnp |char* |form_nocontext |const char* pat|...
117 Anp |void |load_module_nocontext|U32 flags|SV* name|SV* ver|...
118 Afnp |SV* |mess_nocontext |const char* pat|...
119 Afnp |void |warn_nocontext |const char* pat|...
120 Afnp |void |warner_nocontext|U32 err|const char* pat|...
121 Afnp |SV* |newSVpvf_nocontext|const char* pat|...
122 Afnp |void |sv_catpvf_nocontext|SV* sv|const char* pat|...
123 Afnp |void |sv_setpvf_nocontext|SV* sv|const char* pat|...
124 Afnp |void |sv_catpvf_mg_nocontext|SV* sv|const char* pat|...
125 Afnp |void |sv_setpvf_mg_nocontext|SV* sv|const char* pat|...
126 Afnp |int |fprintf_nocontext|PerlIO* stream|const char* fmt|...
127 Afnp |int |printf_nocontext|const char* fmt|...
129 p |void |cv_ckproto |CV* cv|GV* gv|char* p
130 pd |CV* |cv_clone |CV* proto
131 Apd |SV* |cv_const_sv |CV* cv
132 p |SV* |op_const_sv |OP* o|CV* cv
133 Ap |void |cv_undef |CV* cv
134 Ap |void |cx_dump |PERL_CONTEXT* cs
135 Ap |SV* |filter_add |filter_t funcp|SV* datasv
136 Ap |void |filter_del |filter_t funcp
137 Ap |I32 |filter_read |int idx|SV* buffer|int maxlen
138 Ap |char** |get_op_descs
139 Ap |char** |get_op_names
140 p |char* |get_no_modify
142 Ap |PPADDR_t*|get_ppaddr
144 Afp |void |deb |const char* pat|...
145 Ap |void |vdeb |const char* pat|va_list* args
146 Ap |void |debprofdump
147 Ap |I32 |debop |OP* o
149 Ap |I32 |debstackptrs
150 Ap |char* |delimcpy |char* to|char* toend|char* from \
151 |char* fromend|int delim|I32* retlen
152 p |void |deprecate |char* s
153 p |void |deprecate_old |char* s
154 Afp |OP* |die |const char* pat|...
155 p |OP* |vdie |const char* pat|va_list* args
156 p |OP* |die_where |char* message|STRLEN msglen
157 Ap |void |dounwind |I32 cxix
158 p |bool |do_aexec |SV* really|SV** mark|SV** sp
159 p |bool |do_aexec5 |SV* really|SV** mark|SV** sp|int fd|int flag
160 Ap |int |do_binmode |PerlIO *fp|int iotype|int mode
161 p |void |do_chop |SV* asv|SV* sv
162 Ap |bool |do_close |GV* gv|bool not_implicit
163 p |bool |do_eof |GV* gv
164 p |bool |do_exec |char* cmd
166 Ap |int |do_aspawn |SV* really|SV** mark|SV** sp
167 Ap |int |do_spawn |char* cmd
168 Ap |int |do_spawn_nowait|char* cmd
171 p |bool |do_exec3 |char* cmd|int fd|int flag
174 #if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM)
175 p |I32 |do_ipcctl |I32 optype|SV** mark|SV** sp
176 p |I32 |do_ipcget |I32 optype|SV** mark|SV** sp
177 p |I32 |do_msgrcv |SV** mark|SV** sp
178 p |I32 |do_msgsnd |SV** mark|SV** sp
179 p |I32 |do_semop |SV** mark|SV** sp
180 p |I32 |do_shmio |I32 optype|SV** mark|SV** sp
182 Ap |void |do_join |SV* sv|SV* del|SV** mark|SV** sp
184 Ap |bool |do_open |GV* gv|char* name|I32 len|int as_raw \
185 |int rawmode|int rawperm|PerlIO* supplied_fp
186 Ap |bool |do_open9 |GV *gv|char *name|I32 len|int as_raw \
187 |int rawmode|int rawperm|PerlIO *supplied_fp \
189 Ap |bool |do_openn |GV *gv|char *name|I32 len|int as_raw \
190 |int rawmode|int rawperm|PerlIO *supplied_fp \
192 p |void |do_pipe |SV* sv|GV* rgv|GV* wgv
193 p |bool |do_print |SV* sv|PerlIO* fp
195 p |I32 |do_chomp |SV* sv
196 p |bool |do_seek |GV* gv|Off_t pos|int whence
197 Ap |void |do_sprintf |SV* sv|I32 len|SV** sarg
198 p |Off_t |do_sysseek |GV* gv|Off_t pos|int whence
199 p |Off_t |do_tell |GV* gv
200 p |I32 |do_trans |SV* sv
201 p |UV |do_vecget |SV* sv|I32 offset|I32 size
202 p |void |do_vecset |SV* sv
203 p |void |do_vop |I32 optype|SV* sv|SV* left|SV* right
204 p |OP* |dofile |OP* term
208 #if defined(DUMP_FDS)
209 Ap |void |dump_fds |char* s
211 Ap |void |dump_form |GV* gv
212 Ap |void |gv_dump |GV* gv
213 Ap |void |op_dump |OP* arg
214 Ap |void |pmop_dump |PMOP* pm
215 Ap |void |dump_packsubs |HV* stash
216 Ap |void |dump_sub |GV* gv
217 Apd |void |fbm_compile |SV* sv|U32 flags
218 Apd |char* |fbm_instr |unsigned char* big|unsigned char* bigend \
219 |SV* littlesv|U32 flags
220 p |char* |find_script |char *scriptname|bool dosearch \
221 |char **search_ext|I32 flags
222 p |OP* |force_list |OP* arg
223 p |OP* |fold_constants |OP* arg
224 Afpd |char* |form |const char* pat|...
225 Ap |char* |vform |const char* pat|va_list* args
227 p |OP* |gen_constant_list|OP* o
228 #if !defined(HAS_GETENV_LEN)
229 p |char* |getenv_len |const char* key|unsigned long *len
231 Ap |void |gp_free |GV* gv
232 Ap |GP* |gp_ref |GP* gp
233 Ap |GV* |gv_AVadd |GV* gv
234 Ap |GV* |gv_HVadd |GV* gv
235 Ap |GV* |gv_IOadd |GV* gv
236 Ap |GV* |gv_autoload4 |HV* stash|const char* name|STRLEN len \
238 Ap |void |gv_check |HV* stash
239 Ap |void |gv_efullname |SV* sv|GV* gv
240 Ap |void |gv_efullname3 |SV* sv|GV* gv|const char* prefix
241 Ap |void |gv_efullname4 |SV* sv|GV* gv|const char* prefix|bool keepmain
242 Ap |GV* |gv_fetchfile |const char* name
243 Apd |GV* |gv_fetchmeth |HV* stash|const char* name|STRLEN len \
245 Apd |GV* |gv_fetchmeth_autoload |HV* stash|const char* name|STRLEN len \
247 Apd |GV* |gv_fetchmethod |HV* stash|const char* name
248 Apd |GV* |gv_fetchmethod_autoload|HV* stash|const char* name \
250 Ap |GV* |gv_fetchpv |const char* name|I32 add|I32 sv_type
251 Ap |void |gv_fullname |SV* sv|GV* gv
252 Ap |void |gv_fullname3 |SV* sv|GV* gv|const char* prefix
253 Ap |void |gv_fullname4 |SV* sv|GV* gv|const char* prefix|bool keepmain
254 Ap |void |gv_init |GV* gv|HV* stash|const char* name \
255 |STRLEN len|int multi
256 Apd |HV* |gv_stashpv |const char* name|I32 create
257 Ap |HV* |gv_stashpvn |const char* name|U32 namelen|I32 create
258 Apd |HV* |gv_stashsv |SV* sv|I32 create
259 Apd |void |hv_clear |HV* tb
260 Ap |void |hv_delayfree_ent|HV* hv|HE* entry
261 Apd |SV* |hv_delete |HV* tb|const char* key|I32 klen|I32 flags
262 Apd |SV* |hv_delete_ent |HV* tb|SV* key|I32 flags|U32 hash
263 Apd |bool |hv_exists |HV* tb|const char* key|I32 klen
264 Apd |bool |hv_exists_ent |HV* tb|SV* key|U32 hash
265 Apd |SV** |hv_fetch |HV* tb|const char* key|I32 klen|I32 lval
266 Apd |HE* |hv_fetch_ent |HV* tb|SV* key|I32 lval|U32 hash
267 Ap |void |hv_free_ent |HV* hv|HE* entry
268 Apd |I32 |hv_iterinit |HV* tb
269 Apd |char* |hv_iterkey |HE* entry|I32* retlen
270 Apd |SV* |hv_iterkeysv |HE* entry
271 Apd |HE* |hv_iternext |HV* tb
272 Apd |SV* |hv_iternextsv |HV* hv|char** key|I32* retlen
273 ApMd |HE* |hv_iternext_flags|HV* tb|I32 flags
274 Apd |SV* |hv_iterval |HV* tb|HE* entry
275 Ap |void |hv_ksplit |HV* hv|IV newmax
276 Apd |void |hv_magic |HV* hv|GV* gv|int how
277 Apd |SV** |hv_store |HV* tb|const char* key|I32 klen|SV* val \
279 Apd |HE* |hv_store_ent |HV* tb|SV* key|SV* val|U32 hash
280 ApM |SV** |hv_store_flags |HV* tb|const char* key|I32 klen|SV* val \
282 Apd |void |hv_undef |HV* tb
283 Ap |I32 |ibcmp |const char* a|const char* b|I32 len
284 Ap |I32 |ibcmp_locale |const char* a|const char* b|I32 len
285 Apd |I32 |ibcmp_utf8 |const char* a|char **pe1|UV l1|bool u1|const char* b|char **pe2|UV l2|bool u2
286 p |bool |ingroup |Gid_t testgid|Uid_t effective
287 p |void |init_argv_symbols|int|char **
288 p |void |init_debugger
289 Ap |void |init_stacks
290 Ap |void |init_tm |struct tm *ptm
292 Ap |char* |instr |const char* big|const char* little
293 p |bool |io_close |IO* io|bool not_implicit
294 p |OP* |invert |OP* cmd
295 dp |bool |is_gv_magical |char *name|STRLEN len|U32 flags
296 Ap |I32 |is_lvalue_sub
297 Ap |U32 |to_uni_upper_lc|U32 c
298 Ap |U32 |to_uni_title_lc|U32 c
299 Ap |U32 |to_uni_lower_lc|U32 c
300 Ap |bool |is_uni_alnum |UV c
301 Ap |bool |is_uni_alnumc |UV c
302 Ap |bool |is_uni_idfirst |UV c
303 Ap |bool |is_uni_alpha |UV c
304 Ap |bool |is_uni_ascii |UV c
305 Ap |bool |is_uni_space |UV c
306 Ap |bool |is_uni_cntrl |UV c
307 Ap |bool |is_uni_graph |UV c
308 Ap |bool |is_uni_digit |UV c
309 Ap |bool |is_uni_upper |UV c
310 Ap |bool |is_uni_lower |UV c
311 Ap |bool |is_uni_print |UV c
312 Ap |bool |is_uni_punct |UV c
313 Ap |bool |is_uni_xdigit |UV c
314 Ap |UV |to_uni_upper |UV c|U8 *p|STRLEN *lenp
315 Ap |UV |to_uni_title |UV c|U8 *p|STRLEN *lenp
316 Ap |UV |to_uni_lower |UV c|U8 *p|STRLEN *lenp
317 Ap |UV |to_uni_fold |UV c|U8 *p|STRLEN *lenp
318 Ap |bool |is_uni_alnum_lc|UV c
319 Ap |bool |is_uni_alnumc_lc|UV c
320 Ap |bool |is_uni_idfirst_lc|UV c
321 Ap |bool |is_uni_alpha_lc|UV c
322 Ap |bool |is_uni_ascii_lc|UV c
323 Ap |bool |is_uni_space_lc|UV c
324 Ap |bool |is_uni_cntrl_lc|UV c
325 Ap |bool |is_uni_graph_lc|UV c
326 Ap |bool |is_uni_digit_lc|UV c
327 Ap |bool |is_uni_upper_lc|UV c
328 Ap |bool |is_uni_lower_lc|UV c
329 Ap |bool |is_uni_print_lc|UV c
330 Ap |bool |is_uni_punct_lc|UV c
331 Ap |bool |is_uni_xdigit_lc|UV c
332 Apd |STRLEN |is_utf8_char |U8 *p
333 Apd |bool |is_utf8_string |U8 *s|STRLEN len
334 Ap |bool |is_utf8_alnum |U8 *p
335 Ap |bool |is_utf8_alnumc |U8 *p
336 Ap |bool |is_utf8_idfirst|U8 *p
337 Ap |bool |is_utf8_idcont |U8 *p
338 Ap |bool |is_utf8_alpha |U8 *p
339 Ap |bool |is_utf8_ascii |U8 *p
340 Ap |bool |is_utf8_space |U8 *p
341 Ap |bool |is_utf8_cntrl |U8 *p
342 Ap |bool |is_utf8_digit |U8 *p
343 Ap |bool |is_utf8_graph |U8 *p
344 Ap |bool |is_utf8_upper |U8 *p
345 Ap |bool |is_utf8_lower |U8 *p
346 Ap |bool |is_utf8_print |U8 *p
347 Ap |bool |is_utf8_punct |U8 *p
348 Ap |bool |is_utf8_xdigit |U8 *p
349 Ap |bool |is_utf8_mark |U8 *p
350 p |OP* |jmaybe |OP* arg
351 p |I32 |keyword |char* d|I32 len
352 Ap |void |leave_scope |I32 base
354 p |void |lex_start |SV* line
355 Ap |void |op_null |OP* o
356 p |void |op_clear |OP* o
357 p |OP* |linklist |OP* o
359 p |OP* |listkids |OP* o
360 Apd |void |load_module|U32 flags|SV* name|SV* ver|...
361 Ap |void |vload_module|U32 flags|SV* name|SV* ver|va_list* args
362 p |OP* |localize |OP* arg|I32 lexical
363 Apd |I32 |looks_like_number|SV* sv
364 Apd |UV |grok_bin |char* start|STRLEN* len|I32* flags|NV *result
365 Apd |UV |grok_hex |char* start|STRLEN* len|I32* flags|NV *result
366 Apd |int |grok_number |const char *pv|STRLEN len|UV *valuep
367 Apd |bool |grok_numeric_radix|const char **sp|const char *send
368 Apd |UV |grok_oct |char* start|STRLEN* len|I32* flags|NV *result
369 p |int |magic_clearenv |SV* sv|MAGIC* mg
370 p |int |magic_clear_all_env|SV* sv|MAGIC* mg
371 p |int |magic_clearpack|SV* sv|MAGIC* mg
372 p |int |magic_clearsig |SV* sv|MAGIC* mg
373 p |int |magic_existspack|SV* sv|MAGIC* mg
374 p |int |magic_freeregexp|SV* sv|MAGIC* mg
375 p |int |magic_freeovrld|SV* sv|MAGIC* mg
376 p |int |magic_get |SV* sv|MAGIC* mg
377 p |int |magic_getarylen|SV* sv|MAGIC* mg
378 p |int |magic_getdefelem|SV* sv|MAGIC* mg
379 p |int |magic_getglob |SV* sv|MAGIC* mg
380 p |int |magic_getnkeys |SV* sv|MAGIC* mg
381 p |int |magic_getpack |SV* sv|MAGIC* mg
382 p |int |magic_getpos |SV* sv|MAGIC* mg
383 p |int |magic_getsig |SV* sv|MAGIC* mg
384 p |int |magic_getsubstr|SV* sv|MAGIC* mg
385 p |int |magic_gettaint |SV* sv|MAGIC* mg
386 p |int |magic_getuvar |SV* sv|MAGIC* mg
387 p |int |magic_getvec |SV* sv|MAGIC* mg
388 p |U32 |magic_len |SV* sv|MAGIC* mg
389 p |int |magic_nextpack |SV* sv|MAGIC* mg|SV* key
390 p |U32 |magic_regdata_cnt|SV* sv|MAGIC* mg
391 p |int |magic_regdatum_get|SV* sv|MAGIC* mg
392 p |int |magic_regdatum_set|SV* sv|MAGIC* mg
393 p |int |magic_set |SV* sv|MAGIC* mg
394 p |int |magic_setamagic|SV* sv|MAGIC* mg
395 p |int |magic_setarylen|SV* sv|MAGIC* mg
396 p |int |magic_setbm |SV* sv|MAGIC* mg
397 p |int |magic_setdbline|SV* sv|MAGIC* mg
398 #if defined(USE_LOCALE_COLLATE)
399 p |int |magic_setcollxfrm|SV* sv|MAGIC* mg
401 p |int |magic_setdefelem|SV* sv|MAGIC* mg
402 p |int |magic_setenv |SV* sv|MAGIC* mg
403 p |int |magic_setfm |SV* sv|MAGIC* mg
404 p |int |magic_setisa |SV* sv|MAGIC* mg
405 p |int |magic_setglob |SV* sv|MAGIC* mg
406 p |int |magic_setmglob |SV* sv|MAGIC* mg
407 p |int |magic_setnkeys |SV* sv|MAGIC* mg
408 p |int |magic_setpack |SV* sv|MAGIC* mg
409 p |int |magic_setpos |SV* sv|MAGIC* mg
410 p |int |magic_setsig |SV* sv|MAGIC* mg
411 p |int |magic_setsubstr|SV* sv|MAGIC* mg
412 p |int |magic_settaint |SV* sv|MAGIC* mg
413 p |int |magic_setuvar |SV* sv|MAGIC* mg
414 p |int |magic_setvec |SV* sv|MAGIC* mg
415 p |int |magic_set_all_env|SV* sv|MAGIC* mg
416 p |U32 |magic_sizepack |SV* sv|MAGIC* mg
417 p |int |magic_wipepack |SV* sv|MAGIC* mg
418 p |void |magicname |char* sym|char* name|I32 namlen
419 Ap |void |markstack_grow
420 #if defined(USE_LOCALE_COLLATE)
421 p |char* |mem_collxfrm |const char* s|STRLEN len|STRLEN* xlen
423 Afp |SV* |mess |const char* pat|...
424 Ap |SV* |vmess |const char* pat|va_list* args
425 p |void |qerror |SV* err
426 Apd |void |sortsv |SV ** array|size_t num_elts|SVCOMPARE_t cmp
427 Apd |int |mg_clear |SV* sv
428 Apd |int |mg_copy |SV* sv|SV* nsv|const char* key|I32 klen
429 Apd |MAGIC* |mg_find |SV* sv|int type
430 Apd |int |mg_free |SV* sv
431 Apd |int |mg_get |SV* sv
432 Apd |U32 |mg_length |SV* sv
433 Apd |void |mg_magical |SV* sv
434 Apd |int |mg_set |SV* sv
435 Ap |I32 |mg_size |SV* sv
436 Ap |void |mini_mktime |struct tm *pm
437 p |OP* |mod |OP* o|I32 type
438 p |int |mode_from_discipline|SV* discp
439 Ap |char* |moreswitches |char* s
441 Ap |NV |my_atof |const char *s
442 #if (!defined(HAS_MEMCPY) && !defined(HAS_BCOPY)) || (!defined(HAS_MEMMOVE) && !defined(HAS_SAFE_MEMCPY) && !defined(HAS_SAFE_BCOPY))
443 Anp |char* |my_bcopy |const char* from|char* to|I32 len
445 #if !defined(HAS_BZERO) && !defined(HAS_MEMSET)
446 Anp |char* |my_bzero |char* loc|I32 len
448 Apr |void |my_exit |U32 status
449 Apr |void |my_failure_exit
450 Ap |I32 |my_fflush_all
452 Anp |void |atfork_lock
453 Anp |void |atfork_unlock
455 #if !defined(HAS_MEMCMP) || !defined(HAS_SANE_MEMCMP)
456 Anp |I32 |my_memcmp |const char* s1|const char* s2|I32 len
458 #if !defined(HAS_MEMSET)
459 Anp |void* |my_memset |char* loc|I32 ch|I32 len
461 Ap |I32 |my_pclose |PerlIO* ptr
462 Ap |PerlIO*|my_popen |char* cmd|char* mode
463 Ap |PerlIO*|my_popen_list |char* mode|int n|SV ** args
464 Ap |void |my_setenv |char* nam|char* val
466 Ap |char * |my_strftime |char *fmt|int sec|int min|int hour|int mday|int mon|int year|int wday|int yday|int isdst
468 Ap |short |my_swap |short s
469 Ap |long |my_htonl |long l
470 Ap |long |my_ntohl |long l
473 Ap |OP* |newANONLIST |OP* o
474 Ap |OP* |newANONHASH |OP* o
475 Ap |OP* |newANONSUB |I32 floor|OP* proto|OP* block
476 Ap |OP* |newASSIGNOP |I32 flags|OP* left|I32 optype|OP* right
477 Ap |OP* |newCONDOP |I32 flags|OP* expr|OP* trueop|OP* falseop
478 Apd |CV* |newCONSTSUB |HV* stash|char* name|SV* sv
479 Ap |void |newFORM |I32 floor|OP* o|OP* block
480 Ap |OP* |newFOROP |I32 flags|char* label|line_t forline \
481 |OP* sclr|OP* expr|OP*block|OP*cont
482 Ap |OP* |newLOGOP |I32 optype|I32 flags|OP* left|OP* right
483 Ap |OP* |newLOOPEX |I32 type|OP* label
484 Ap |OP* |newLOOPOP |I32 flags|I32 debuggable|OP* expr|OP* block
486 Ap |OP* |newOP |I32 optype|I32 flags
487 Ap |void |newPROG |OP* o
488 Ap |OP* |newRANGE |I32 flags|OP* left|OP* right
489 Ap |OP* |newSLICEOP |I32 flags|OP* subscript|OP* listop
490 Ap |OP* |newSTATEOP |I32 flags|char* label|OP* o
491 Ap |CV* |newSUB |I32 floor|OP* o|OP* proto|OP* block
492 Apd |CV* |newXS |char* name|XSUBADDR_t f|char* filename
494 Ap |OP* |newAVREF |OP* o
495 Ap |OP* |newBINOP |I32 type|I32 flags|OP* first|OP* last
496 Ap |OP* |newCVREF |I32 flags|OP* o
497 Ap |OP* |newGVOP |I32 type|I32 flags|GV* gv
498 Ap |GV* |newGVgen |char* pack
499 Ap |OP* |newGVREF |I32 type|OP* o
500 Ap |OP* |newHVREF |OP* o
502 Ap |HV* |newHVhv |HV* hv
504 Ap |OP* |newLISTOP |I32 type|I32 flags|OP* first|OP* last
505 Ap |OP* |newPADOP |I32 type|I32 flags|SV* sv
506 Ap |OP* |newPMOP |I32 type|I32 flags
507 Ap |OP* |newPVOP |I32 type|I32 flags|char* pv
508 Ap |SV* |newRV |SV* pref
509 Apd |SV* |newRV_noinc |SV *sv
510 Apd |SV* |newSV |STRLEN len
511 Ap |OP* |newSVREF |OP* o
512 Ap |OP* |newSVOP |I32 type|I32 flags|SV* sv
513 Apd |SV* |newSViv |IV i
514 Apd |SV* |newSVuv |UV u
515 Apd |SV* |newSVnv |NV n
516 Apd |SV* |newSVpv |const char* s|STRLEN len
517 Apd |SV* |newSVpvn |const char* s|STRLEN len
518 Apd |SV* |newSVpvn_share |const char* s|I32 len|U32 hash
519 Afpd |SV* |newSVpvf |const char* pat|...
520 Ap |SV* |vnewSVpvf |const char* pat|va_list* args
521 Apd |SV* |newSVrv |SV* rv|const char* classname
522 Apd |SV* |newSVsv |SV* old
523 Ap |OP* |newUNOP |I32 type|I32 flags|OP* first
524 Ap |OP* |newWHILEOP |I32 flags|I32 debuggable|LOOP* loop \
525 |I32 whileline|OP* expr|OP* block|OP* cont
527 Ap |PERL_SI*|new_stackinfo|I32 stitems|I32 cxitems
528 Apd |char* |scan_vstring |char *vstr|SV *sv
529 Apd |char* |scan_version |char *vstr|SV *sv
530 Apd |SV* |new_version |SV *ver
531 Apd |SV* |upg_version |SV *ver
532 Apd |SV* |vnumify |SV *vs
533 Apd |SV* |vstringify |SV *vs
534 Apd |int |vcmp |SV *lvs|SV *rvs
535 p |PerlIO*|nextargv |GV* gv
536 Ap |char* |ninstr |const char* big|const char* bigend \
537 |const char* little|const char* lend
538 p |OP* |oopsCV |OP* o
539 Ap |void |op_free |OP* arg
540 p |void |package |OP* o
541 pd |PADOFFSET|pad_alloc |I32 optype|U32 tmptype
542 p |PADOFFSET|allocmy |char* name
543 pd |PADOFFSET|pad_findmy |char* name
544 p |OP* |oopsAV |OP* o
545 p |OP* |oopsHV |OP* o
546 pd |void |pad_leavemy
547 Apd |SV* |pad_sv |PADOFFSET po
548 pd |void |pad_free |PADOFFSET po
550 pd |void |pad_swipe |PADOFFSET po|bool refadjust
552 dopM |PerlIO*|start_glob |SV* pattern|IO *io
553 #if defined(USE_REENTRANT_API)
554 Ap |void |reentrant_size
555 Ap |void |reentrant_init
556 Ap |void |reentrant_free
557 Anp |void* |reentrant_retry|const char*|...
559 Ap |void |call_atexit |ATEXIT_t fn|void *ptr
560 Apd |I32 |call_argv |const char* sub_name|I32 flags|char** argv
561 Apd |I32 |call_method |const char* methname|I32 flags
562 Apd |I32 |call_pv |const char* sub_name|I32 flags
563 Apd |I32 |call_sv |SV* sv|I32 flags
564 Ap |void |despatch_signals
565 Apd |SV* |eval_pv |const char* p|I32 croak_on_error
566 Apd |I32 |eval_sv |SV* sv|I32 flags
567 Apd |SV* |get_sv |const char* name|I32 create
568 Apd |AV* |get_av |const char* name|I32 create
569 Apd |HV* |get_hv |const char* name|I32 create
570 Apd |CV* |get_cv |const char* name|I32 create
571 Ap |int |init_i18nl10n |int printwarn
572 Ap |int |init_i18nl14n |int printwarn
573 Ap |void |new_collate |char* newcoll
574 Ap |void |new_ctype |char* newctype
575 Ap |void |new_numeric |char* newcoll
576 Ap |void |set_numeric_local
577 Ap |void |set_numeric_radix
578 Ap |void |set_numeric_standard
579 Apd |void |require_pv |const char* pv
580 Apd |void |pack_cat |SV *cat|char *pat|char *patend|SV **beglist|SV **endlist|SV ***next_in_list|U32 flags
581 p |void |pidgone |Pid_t pid|int status
582 Ap |void |pmflag |U32* pmfl|int ch
583 p |OP* |pmruntime |OP* pm|OP* expr|OP* repl
584 p |OP* |pmtrans |OP* o|OP* expr|OP* repl
587 p |OP* |prepend_elem |I32 optype|OP* head|OP* tail
588 p |void |push_return |OP* o
590 p |OP* |ref |OP* o|I32 type
591 p |OP* |refkids |OP* o|I32 type
592 Ap |void |regdump |regexp* r
593 Ap |SV* |regclass_swash |struct regnode *n|bool doinit|SV **listsvp|SV **altsvp
594 Ap |I32 |pregexec |regexp* prog|char* stringarg \
595 |char* strend|char* strbeg|I32 minend \
596 |SV* screamer|U32 nosave
597 Ap |void |pregfree |struct regexp* r
598 Ap |regexp*|pregcomp |char* exp|char* xend|PMOP* pm
599 Ap |char* |re_intuit_start|regexp* prog|SV* sv|char* strpos \
600 |char* strend|U32 flags \
601 |struct re_scream_pos_data_s *data
602 Ap |SV* |re_intuit_string|regexp* prog
603 Ap |I32 |regexec_flags |regexp* prog|char* stringarg \
604 |char* strend|char* strbeg|I32 minend \
605 |SV* screamer|void* data|U32 flags
606 Ap |regnode*|regnext |regnode* p
607 p |void |regprop |SV* sv|regnode* o
608 Ap |void |repeatcpy |char* to|const char* from|I32 len|I32 count
609 Ap |char* |rninstr |const char* big|const char* bigend \
610 |const char* little|const char* lend
611 Ap |Sighandler_t|rsignal |int i|Sighandler_t t
612 p |int |rsignal_restore|int i|Sigsave_t* t
613 p |int |rsignal_save |int i|Sighandler_t t1|Sigsave_t* t2
614 Ap |Sighandler_t|rsignal_state|int i
615 p |void |rxres_free |void** rsp
616 p |void |rxres_restore |void** rsp|REGEXP* prx
617 p |void |rxres_save |void** rsp|REGEXP* prx
618 #if !defined(HAS_RENAME)
619 p |I32 |same_dirent |char* a|char* b
621 Apd |char* |savepv |const char* pv
622 Apd |char* |savesharedpv |const char* pv
623 Apd |char* |savepvn |const char* pv|I32 len
624 Ap |void |savestack_grow
625 Ap |void |save_aelem |AV* av|I32 idx|SV **sptr
626 Ap |I32 |save_alloc |I32 size|I32 pad
627 Ap |void |save_aptr |AV** aptr
628 Ap |AV* |save_ary |GV* gv
629 Ap |void |save_clearsv |SV** svp
630 Ap |void |save_delete |HV* hv|char* key|I32 klen
631 Ap |void |save_destructor|DESTRUCTORFUNC_NOCONTEXT_t f|void* p
632 Ap |void |save_destructor_x|DESTRUCTORFUNC_t f|void* p
633 Ap |void |save_freesv |SV* sv
634 p |void |save_freeop |OP* o
635 Ap |void |save_freepv |char* pv
636 Ap |void |save_generic_svref|SV** sptr
637 Ap |void |save_generic_pvref|char** str
638 Ap |void |save_shared_pvref|char** str
639 Ap |void |save_gp |GV* gv|I32 empty
640 Ap |HV* |save_hash |GV* gv
641 Ap |void |save_helem |HV* hv|SV *key|SV **sptr
643 Ap |void |save_hptr |HV** hptr
644 Ap |void |save_I16 |I16* intp
645 Ap |void |save_I32 |I32* intp
646 Ap |void |save_I8 |I8* bytep
647 Ap |void |save_int |int* intp
648 Ap |void |save_item |SV* item
649 Ap |void |save_iv |IV* iv
650 Ap |void |save_list |SV** sarg|I32 maxsarg
651 Ap |void |save_long |long* longp
652 Ap |void |save_mortalizesv|SV* sv
653 Ap |void |save_nogv |GV* gv
655 Ap |SV* |save_scalar |GV* gv
656 Ap |void |save_pptr |char** pptr
657 Ap |void |save_vptr |void* pptr
658 Ap |void |save_re_context
659 Ap |void |save_padsv |PADOFFSET off
660 Ap |void |save_sptr |SV** sptr
661 Ap |SV* |save_svref |SV** sptr
662 Ap |SV** |save_threadsv |PADOFFSET i
663 p |OP* |sawparens |OP* o
664 p |OP* |scalar |OP* o
665 p |OP* |scalarkids |OP* o
666 p |OP* |scalarseq |OP* o
667 p |OP* |scalarvoid |OP* o
668 Apd |NV |scan_bin |char* start|STRLEN len|STRLEN* retlen
669 Apd |NV |scan_hex |char* start|STRLEN len|STRLEN* retlen
670 Ap |char* |scan_num |char* s|YYSTYPE *lvalp
671 Apd |NV |scan_oct |char* start|STRLEN len|STRLEN* retlen
673 Ap |char* |screaminstr |SV* bigsv|SV* littlesv|I32 start_shift \
674 |I32 end_shift|I32 *state|I32 last
676 p |I32 |setenv_getix |char* nam
678 p |void |setdefout |GV* gv
679 p |HEK* |share_hek |const char* sv|I32 len|U32 hash
680 np |Signal_t |sighandler |int sig
681 Ap |SV** |stack_grow |SV** sp|SV**p|int n
682 Ap |I32 |start_subparse |I32 is_format|U32 flags
683 p |void |sub_crush_depth|CV* cv
684 Apd |bool |sv_2bool |SV* sv
685 Apd |CV* |sv_2cv |SV* sv|HV** st|GV** gvp|I32 lref
686 Apd |IO* |sv_2io |SV* sv
687 Apd |IV |sv_2iv |SV* sv
688 Apd |SV* |sv_2mortal |SV* sv
689 Apd |NV |sv_2nv |SV* sv
690 Am |char* |sv_2pv |SV* sv|STRLEN* lp
691 Apd |char* |sv_2pvutf8 |SV* sv|STRLEN* lp
692 Apd |char* |sv_2pvbyte |SV* sv|STRLEN* lp
693 Ap |char* |sv_pvn_nomg |SV* sv|STRLEN* lp
694 Apd |UV |sv_2uv |SV* sv
695 Apd |IV |sv_iv |SV* sv
696 Apd |UV |sv_uv |SV* sv
697 Apd |NV |sv_nv |SV* sv
698 Apd |char* |sv_pvn |SV *sv|STRLEN *len
699 Apd |char* |sv_pvutf8n |SV *sv|STRLEN *len
700 Apd |char* |sv_pvbyten |SV *sv|STRLEN *len
701 Apd |I32 |sv_true |SV *sv
702 pd |void |sv_add_arena |char* ptr|U32 size|U32 flags
703 Apd |int |sv_backoff |SV* sv
704 Apd |SV* |sv_bless |SV* sv|HV* stash
705 Afpd |void |sv_catpvf |SV* sv|const char* pat|...
706 Ap |void |sv_vcatpvf |SV* sv|const char* pat|va_list* args
707 Apd |void |sv_catpv |SV* sv|const char* ptr
708 Amd |void |sv_catpvn |SV* sv|const char* ptr|STRLEN len
709 Amd |void |sv_catsv |SV* dsv|SV* ssv
710 Apd |void |sv_chop |SV* sv|char* ptr
711 pd |I32 |sv_clean_all
712 pd |void |sv_clean_objs
713 Apd |void |sv_clear |SV* sv
714 Apd |I32 |sv_cmp |SV* sv1|SV* sv2
715 Apd |I32 |sv_cmp_locale |SV* sv1|SV* sv2
716 #if defined(USE_LOCALE_COLLATE)
717 Apd |char* |sv_collxfrm |SV* sv|STRLEN* nxp
719 Ap |OP* |sv_compile_2op |SV* sv|OP** startp|char* code|PAD** padp
720 Apd |int |getcwd_sv |SV* sv
721 Apd |void |sv_dec |SV* sv
722 Ap |void |sv_dump |SV* sv
723 Apd |bool |sv_derived_from|SV* sv|const char* name
724 Apd |I32 |sv_eq |SV* sv1|SV* sv2
725 Apd |void |sv_free |SV* sv
726 pd |void |sv_free_arenas
727 Apd |char* |sv_gets |SV* sv|PerlIO* fp|I32 append
728 Apd |char* |sv_grow |SV* sv|STRLEN newlen
729 Apd |void |sv_inc |SV* sv
730 Apd |void |sv_insert |SV* bigsv|STRLEN offset|STRLEN len \
731 |char* little|STRLEN littlelen
732 Apd |int |sv_isa |SV* sv|const char* name
733 Apd |int |sv_isobject |SV* sv
734 Apd |STRLEN |sv_len |SV* sv
735 Apd |STRLEN |sv_len_utf8 |SV* sv
736 Apd |void |sv_magic |SV* sv|SV* obj|int how|const char* name \
738 Apd |MAGIC *|sv_magicext |SV* sv|SV* obj|int how|MGVTBL *vtbl \
739 | const char* name|I32 namlen
740 Apd |SV* |sv_mortalcopy |SV* oldsv
741 Apd |SV* |sv_newmortal
742 Apd |SV* |sv_newref |SV* sv
743 Ap |char* |sv_peek |SV* sv
744 Apd |void |sv_pos_u2b |SV* sv|I32* offsetp|I32* lenp
745 Apd |void |sv_pos_b2u |SV* sv|I32* offsetp
746 Amd |char* |sv_pvn_force |SV* sv|STRLEN* lp
747 Apd |char* |sv_pvutf8n_force|SV* sv|STRLEN* lp
748 Apd |char* |sv_pvbyten_force|SV* sv|STRLEN* lp
749 Apd |char* |sv_recode_to_utf8 |SV* sv|SV *encoding
750 Apd |char* |sv_reftype |SV* sv|int ob
751 Apd |void |sv_replace |SV* sv|SV* nsv
752 Apd |void |sv_report_used
753 Apd |void |sv_reset |char* s|HV* stash
754 Afpd |void |sv_setpvf |SV* sv|const char* pat|...
755 Ap |void |sv_vsetpvf |SV* sv|const char* pat|va_list* args
756 Apd |void |sv_setiv |SV* sv|IV num
757 Apd |void |sv_setuv |SV* sv|UV num
758 Apd |void |sv_setnv |SV* sv|NV num
759 Apd |SV* |sv_setref_iv |SV* rv|const char* classname|IV iv
760 Apd |SV* |sv_setref_uv |SV* rv|const char* classname|UV uv
761 Apd |SV* |sv_setref_nv |SV* rv|const char* classname|NV nv
762 Apd |SV* |sv_setref_pv |SV* rv|const char* classname|void* pv
763 Apd |SV* |sv_setref_pvn |SV* rv|const char* classname|char* pv \
765 Apd |void |sv_setpv |SV* sv|const char* ptr
766 Apd |void |sv_setpvn |SV* sv|const char* ptr|STRLEN len
767 Amd |void |sv_setsv |SV* dsv|SV* ssv
768 Apd |void |sv_taint |SV* sv
769 Apd |bool |sv_tainted |SV* sv
770 Apd |int |sv_unmagic |SV* sv|int type
771 Apd |void |sv_unref |SV* sv
772 Apd |void |sv_unref_flags |SV* sv|U32 flags
773 Apd |void |sv_untaint |SV* sv
774 Apd |bool |sv_upgrade |SV* sv|U32 mt
775 Apd |void |sv_usepvn |SV* sv|char* ptr|STRLEN len
776 Apd |void |sv_vcatpvfn |SV* sv|const char* pat|STRLEN patlen \
777 |va_list* args|SV** svargs|I32 svmax \
779 Apd |void |sv_vsetpvfn |SV* sv|const char* pat|STRLEN patlen \
780 |va_list* args|SV** svargs|I32 svmax \
782 Ap |NV |str_to_version |SV *sv
783 Ap |SV* |swash_init |char* pkg|char* name|SV* listsv \
784 |I32 minbits|I32 none
785 Ap |UV |swash_fetch |SV *sv|U8 *ptr|bool do_utf8
787 Ap |void |taint_proper |const char* f|const char* s
788 Apd |UV |to_utf8_case |U8 *p|U8* ustrp|STRLEN *lenp \
789 |SV **swash|char *normal|char *special
790 Apd |UV |to_utf8_lower |U8 *p|U8* ustrp|STRLEN *lenp
791 Apd |UV |to_utf8_upper |U8 *p|U8* ustrp|STRLEN *lenp
792 Apd |UV |to_utf8_title |U8 *p|U8* ustrp|STRLEN *lenp
793 Apd |UV |to_utf8_fold |U8 *p|U8* ustrp|STRLEN *lenp
794 #if defined(UNLINK_ALL_VERSIONS)
795 Ap |I32 |unlnk |char* f
797 Apd |I32 |unpack_str |char *pat|char *patend|char *s|char *strbeg|char *strend|char **new_s|I32 ocnt|U32 flags
798 Ap |void |unsharepvn |const char* sv|I32 len|U32 hash
799 p |void |unshare_hek |HEK* hek
800 p |void |utilize |int aver|I32 floor|OP* version|OP* id|OP* arg
801 Ap |U8* |utf16_to_utf8 |U8* p|U8 *d|I32 bytelen|I32 *newlen
802 Ap |U8* |utf16_to_utf8_reversed|U8* p|U8 *d|I32 bytelen|I32 *newlen
803 Adp |STRLEN |utf8_length |U8* s|U8 *e
804 Apd |IV |utf8_distance |U8 *a|U8 *b
805 Apd |U8* |utf8_hop |U8 *s|I32 off
806 ApMd |U8* |utf8_to_bytes |U8 *s|STRLEN *len
807 ApMd |U8* |bytes_from_utf8|U8 *s|STRLEN *len|bool *is_utf8
808 ApMd |U8* |bytes_to_utf8 |U8 *s|STRLEN *len
809 Apd |UV |utf8_to_uvchr |U8 *s|STRLEN* retlen
810 Apd |UV |utf8_to_uvuni |U8 *s|STRLEN* retlen
811 Adp |UV |utf8n_to_uvchr |U8 *s|STRLEN curlen|STRLEN* retlen|U32 flags
812 Adp |UV |utf8n_to_uvuni |U8 *s|STRLEN curlen|STRLEN* retlen|U32 flags
813 Apd |U8* |uvchr_to_utf8 |U8 *d|UV uv
814 Ap |U8* |uvuni_to_utf8 |U8 *d|UV uv
815 Ap |U8* |uvchr_to_utf8_flags |U8 *d|UV uv|UV flags
816 Apd |U8* |uvuni_to_utf8_flags |U8 *d|UV uv|UV flags
817 Apd |char* |pv_uni_display |SV *dsv|U8 *spv|STRLEN len \
818 |STRLEN pvlim|UV flags
819 Apd |char* |sv_uni_display |SV *dsv|SV *ssv|STRLEN pvlim|UV flags
820 p |void |vivify_defelem |SV* sv
821 p |void |vivify_ref |SV* sv|U32 to_what
822 p |I32 |wait4pid |Pid_t pid|int* statusp|int flags
823 p |void |report_evil_fh |GV *gv|IO *io|I32 op
824 pd |void |report_uninit
825 Afpd |void |warn |const char* pat|...
826 Ap |void |vwarn |const char* pat|va_list* args
827 Afp |void |warner |U32 err|const char* pat|...
828 Ap |void |vwarner |U32 err|const char* pat|va_list* args
829 p |void |watch |char** addr
830 Ap |I32 |whichsig |char* sig
831 p |int |yyerror |char* s
832 #ifdef USE_PURE_BISON
833 p |int |yylex_r |YYSTYPE *lvalp|int *lcharp
837 p |int |yywarn |char* s
838 #if defined(MYMALLOC)
839 Ap |void |dump_mstats |char* s
840 Ap |int |get_mstats |perl_mstats_t *buf|int buflen|int level
842 Anp |Malloc_t|safesysmalloc |MEM_SIZE nbytes
843 Anp |Malloc_t|safesyscalloc |MEM_SIZE elements|MEM_SIZE size
844 Anp |Malloc_t|safesysrealloc|Malloc_t where|MEM_SIZE nbytes
845 Anp |Free_t |safesysfree |Malloc_t where
846 #if defined(PERL_GLOBAL_STRUCT)
847 Ap |struct perl_vars *|GetVars
849 Ap |int |runops_standard
850 Ap |int |runops_debug
851 Afpd |void |sv_catpvf_mg |SV *sv|const char* pat|...
852 Ap |void |sv_vcatpvf_mg |SV* sv|const char* pat|va_list* args
853 Apd |void |sv_catpv_mg |SV *sv|const char *ptr
854 Apd |void |sv_catpvn_mg |SV *sv|const char *ptr|STRLEN len
855 Apd |void |sv_catsv_mg |SV *dstr|SV *sstr
856 Afpd |void |sv_setpvf_mg |SV *sv|const char* pat|...
857 Ap |void |sv_vsetpvf_mg |SV* sv|const char* pat|va_list* args
858 Apd |void |sv_setiv_mg |SV *sv|IV i
859 Apd |void |sv_setuv_mg |SV *sv|UV u
860 Apd |void |sv_setnv_mg |SV *sv|NV num
861 Apd |void |sv_setpv_mg |SV *sv|const char *ptr
862 Apd |void |sv_setpvn_mg |SV *sv|const char *ptr|STRLEN len
863 Apd |void |sv_setsv_mg |SV *dstr|SV *sstr
864 Apd |void |sv_usepvn_mg |SV *sv|char *ptr|STRLEN len
865 Ap |MGVTBL*|get_vtbl |int vtbl_id
866 Ap |char* |pv_display |SV *dsv|char *pv|STRLEN cur|STRLEN len \
868 Afp |void |dump_indent |I32 level|PerlIO *file|const char* pat|...
869 Ap |void |dump_vindent |I32 level|PerlIO *file|const char* pat \
871 Ap |void |do_gv_dump |I32 level|PerlIO *file|char *name|GV *sv
872 Ap |void |do_gvgv_dump |I32 level|PerlIO *file|char *name|GV *sv
873 Ap |void |do_hv_dump |I32 level|PerlIO *file|char *name|HV *sv
874 Ap |void |do_magic_dump |I32 level|PerlIO *file|MAGIC *mg|I32 nest \
875 |I32 maxnest|bool dumpops|STRLEN pvlim
876 Ap |void |do_op_dump |I32 level|PerlIO *file|OP *o
877 Ap |void |do_pmop_dump |I32 level|PerlIO *file|PMOP *pm
878 Ap |void |do_sv_dump |I32 level|PerlIO *file|SV *sv|I32 nest \
879 |I32 maxnest|bool dumpops|STRLEN pvlim
880 Ap |void |magic_dump |MAGIC *mg
881 #if defined(PERL_FLEXIBLE_EXCEPTIONS)
882 Ap |void* |default_protect|volatile JMPENV *je|int *excpt \
883 |protect_body_t body|...
884 Ap |void* |vdefault_protect|volatile JMPENV *je|int *excpt \
885 |protect_body_t body|va_list *args
887 Ap |void |reginitcolors
888 Apd |char* |sv_2pv_nolen |SV* sv
889 Apd |char* |sv_2pvutf8_nolen|SV* sv
890 Apd |char* |sv_2pvbyte_nolen|SV* sv
891 Amd |char* |sv_pv |SV *sv
892 Amd |char* |sv_pvutf8 |SV *sv
893 Amd |char* |sv_pvbyte |SV *sv
894 Amd |STRLEN |sv_utf8_upgrade|SV *sv
895 ApdM |bool |sv_utf8_downgrade|SV *sv|bool fail_ok
896 Apd |void |sv_utf8_encode |SV *sv
897 ApdM |bool |sv_utf8_decode |SV *sv
898 Apd |void |sv_force_normal|SV *sv
899 Apd |void |sv_force_normal_flags|SV *sv|U32 flags
900 Ap |void |tmps_grow |I32 n
901 Apd |SV* |sv_rvweaken |SV *sv
902 p |int |magic_killbackrefs|SV *sv|MAGIC *mg
903 Ap |OP* |newANONATTRSUB |I32 floor|OP *proto|OP *attrs|OP *block
904 Ap |CV* |newATTRSUB |I32 floor|OP *o|OP *proto|OP *attrs|OP *block
905 Ap |void |newMYSUB |I32 floor|OP *o|OP *proto|OP *attrs|OP *block
906 p |OP * |my_attrs |OP *o|OP *attrs
907 p |void |boot_core_xsutils
908 #if defined(USE_ITHREADS)
909 Ap |PERL_CONTEXT*|cx_dup |PERL_CONTEXT* cx|I32 ix|I32 max|CLONE_PARAMS* param
910 Ap |PERL_SI*|si_dup |PERL_SI* si|CLONE_PARAMS* param
911 Ap |ANY* |ss_dup |PerlInterpreter* proto_perl|CLONE_PARAMS* param
912 Ap |void* |any_dup |void* v|PerlInterpreter* proto_perl
913 Ap |HE* |he_dup |HE* e|bool shared|CLONE_PARAMS* param
914 Ap |REGEXP*|re_dup |REGEXP* r|CLONE_PARAMS* param
915 Ap |PerlIO*|fp_dup |PerlIO* fp|char type|CLONE_PARAMS* param
916 Ap |DIR* |dirp_dup |DIR* dp
917 Ap |GP* |gp_dup |GP* gp|CLONE_PARAMS* param
918 Ap |MAGIC* |mg_dup |MAGIC* mg|CLONE_PARAMS* param
919 Ap |SV* |sv_dup |SV* sstr|CLONE_PARAMS* param
920 #if defined(HAVE_INTERP_INTERN)
921 Ap |void |sys_intern_dup |struct interp_intern* src \
922 |struct interp_intern* dst
924 Ap |PTR_TBL_t*|ptr_table_new
925 Ap |void* |ptr_table_fetch|PTR_TBL_t *tbl|void *sv
926 Ap |void |ptr_table_store|PTR_TBL_t *tbl|void *oldsv|void *newsv
927 Ap |void |ptr_table_split|PTR_TBL_t *tbl
928 Ap |void |ptr_table_clear|PTR_TBL_t *tbl
929 Ap |void |ptr_table_free|PTR_TBL_t *tbl
931 #if defined(HAVE_INTERP_INTERN)
932 Ap |void |sys_intern_clear
933 Ap |void |sys_intern_init
936 Ap |char * |custom_op_name|OP* op
937 Ap |char * |custom_op_desc|OP* op
939 #if defined(PERL_COPY_ON_WRITE)
940 pM |int |sv_release_IVX |SV *sv
943 Adp |void |sv_nosharing |SV *
944 Adp |void |sv_nolocking |SV *
945 Adp |void |sv_nounlocking |SV *
946 Adp |int |nothreadhook
950 #if defined(PERL_IN_DOOP_C) || defined(PERL_DECL_PROT)
951 s |I32 |do_trans_simple |SV *sv
952 s |I32 |do_trans_count |SV *sv
953 s |I32 |do_trans_complex |SV *sv
954 s |I32 |do_trans_simple_utf8 |SV *sv
955 s |I32 |do_trans_count_utf8 |SV *sv
956 s |I32 |do_trans_complex_utf8 |SV *sv
959 #if defined(PERL_IN_GV_C) || defined(PERL_DECL_PROT)
960 s |void |gv_init_sv |GV *gv|I32 sv_type
961 s |void |require_errno |GV *gv
964 #if defined(PERL_IN_HV_C) || defined(PERL_DECL_PROT)
965 s |void |hsplit |HV *hv
966 s |void |hfreeentries |HV *hv
969 s |void |del_he |HE *p
970 s |HEK* |save_hek_flags |const char *str|I32 len|U32 hash|int flags
971 s |void |hv_magic_check |HV *hv|bool *needs_copy|bool *needs_store
972 s |void |unshare_hek_or_pvn|HEK* hek|const char* sv|I32 len|U32 hash
973 s |HEK* |share_hek_flags|const char* sv|I32 len|U32 hash|int flags
974 s |SV** |hv_fetch_flags |HV* tb|const char* key|I32 klen|I32 lval \
976 s |void |hv_notallowed |int flags|const char *key|I32 klen|const char *msg
979 #if defined(PERL_IN_MG_C) || defined(PERL_DECL_PROT)
980 s |void |save_magic |I32 mgs_ix|SV *sv
981 s |int |magic_methpack |SV *sv|MAGIC *mg|char *meth
982 s |int |magic_methcall |SV *sv|MAGIC *mg|char *meth|I32 f \
986 #if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
987 s |I32 |list_assignment|OP *o
988 s |void |bad_type |I32 n|char *t|char *name|OP *kid
989 s |void |cop_free |COP *cop
990 s |OP* |modkids |OP *o|I32 type
991 s |void |no_bareword_allowed|OP *o
992 s |OP* |no_fh_allowed |OP *o
993 s |OP* |scalarboolean |OP *o
994 s |OP* |too_few_arguments|OP *o|char* name
995 s |OP* |too_many_arguments|OP *o|char* name
997 s |OP* |new_logop |I32 type|I32 flags|OP **firstp|OP **otherp
998 s |void |simplify_sort |OP *o
999 s |bool |is_handle_constructor |OP *o|I32 argnum
1000 s |char* |gv_ename |GV *gv
1001 s |bool |scalar_mod_type|OP *o|I32 type
1002 s |OP * |my_kid |OP *o|OP *attrs|OP **imopsp
1003 s |OP * |dup_attrlist |OP *o
1004 s |void |apply_attrs |HV *stash|SV *target|OP *attrs|bool for_my
1005 s |void |apply_attrs_my |HV *stash|OP *target|OP *attrs|OP **imopsp
1006 # if defined(PL_OP_SLAB_ALLOC)
1007 s |void* |Slab_Alloc |int m|size_t sz
1008 s |void |Slab_Free |void *op
1012 #if defined(PERL_IN_PERL_C) || defined(PERL_DECL_PROT)
1013 s |void |find_beginning
1014 s |void |forbid_setid |char *
1015 s |void |incpush |char *|int|int|int
1016 s |void |init_interp
1019 s |void |init_main_stash
1020 s |void |init_perllib
1021 s |void |init_postdump_symbols|int|char **|char **
1022 s |void |init_predump_symbols
1023 rs |void |my_exit_jump
1024 s |void |nuke_stacks
1025 s |void |open_script |char *|bool|SV *|int *fd
1026 s |void |usage |char *
1027 s |void |validate_suid |char *|char*|int
1028 # if defined(IAMSUID)
1029 s |int |fd_on_nosuid_fs|int fd
1031 s |void* |parse_body |char **env|XSINIT_t xsinit
1032 s |void* |run_body |I32 oldscope
1033 s |void |call_body |OP *myop|int is_eval
1034 s |void* |call_list_body |CV *cv
1035 #if defined(PERL_FLEXIBLE_EXCEPTIONS)
1036 s |void* |vparse_body |va_list args
1037 s |void* |vrun_body |va_list args
1038 s |void* |vcall_body |va_list args
1039 s |void* |vcall_list_body|va_list args
1043 #if defined(PERL_IN_PP_C) || defined(PERL_DECL_PROT)
1044 s |SV* |refto |SV* sv
1048 #if defined(PERL_IN_PP_PACK_C) || defined(PERL_DECL_PROT)
1049 s |void |doencodes |SV* sv|char* s|I32 len
1050 s |SV* |mul128 |SV *sv|U8 m
1051 s |SV* |is_an_int |char *s|STRLEN l
1052 s |int |div128 |SV *pnum|bool *done
1053 s |char * |next_symbol |char *pat|char *patend
1054 s |I32 |find_count |char **ppat|char *patend|int *star
1055 s |char * |group_end |char *pat|char *patend|char ender
1056 s |I32 |measure_struct |char *pat|char *patend
1059 #if defined(PERL_IN_PP_CTL_C) || defined(PERL_DECL_PROT)
1060 s |OP* |docatch |OP *o
1061 s |void* |docatch_body
1062 #if defined(PERL_FLEXIBLE_EXCEPTIONS)
1063 s |void* |vdocatch_body |va_list args
1065 s |OP* |dofindlabel |OP *o|char *label|OP **opstack|OP **oplimit
1066 s |void |doparseform |SV *sv
1067 s |I32 |dopoptoeval |I32 startingblock
1068 s |I32 |dopoptolabel |char *label
1069 s |I32 |dopoptoloop |I32 startingblock
1070 s |I32 |dopoptosub |I32 startingblock
1071 s |I32 |dopoptosub_at |PERL_CONTEXT* cxstk|I32 startingblock
1072 s |void |save_lines |AV *array|SV *sv
1073 s |OP* |doeval |int gimme|OP** startop
1074 s |PerlIO *|doopen_pmc |const char *name|const char *mode
1075 s |bool |path_is_absolute|char *name
1078 #if defined(PERL_IN_PP_HOT_C) || defined(PERL_DECL_PROT)
1079 s |void |do_oddball |HV *hash|SV **relem|SV **firstrelem
1080 s |CV* |get_db_sub |SV **svp|CV *cv
1081 s |SV* |method_common |SV* meth|U32* hashp
1084 #if defined(PERL_IN_PP_SYS_C) || defined(PERL_DECL_PROT)
1085 s |OP* |doform |CV *cv|GV *gv|OP *retop
1086 s |int |emulate_eaccess|const char* path|Mode_t mode
1087 # if !defined(HAS_MKDIR) || !defined(HAS_RMDIR)
1088 s |int |dooneliner |char *cmd|char *filename
1092 #if defined(PERL_IN_REGCOMP_C) || defined(PERL_DECL_PROT)
1093 s |regnode*|reg |struct RExC_state_t*|I32|I32 *
1094 s |regnode*|reganode |struct RExC_state_t*|U8|U32
1095 s |regnode*|regatom |struct RExC_state_t*|I32 *
1096 s |regnode*|regbranch |struct RExC_state_t*|I32 *|I32
1097 s |void |reguni |struct RExC_state_t*|UV|char *|STRLEN*
1098 s |regnode*|regclass |struct RExC_state_t*
1099 s |I32 |regcurly |char *
1100 s |regnode*|reg_node |struct RExC_state_t*|U8
1101 s |regnode*|regpiece |struct RExC_state_t*|I32 *
1102 s |void |reginsert |struct RExC_state_t*|U8|regnode *
1103 s |void |regoptail |struct RExC_state_t*|regnode *|regnode *
1104 s |void |regtail |struct RExC_state_t*|regnode *|regnode *
1105 s |char*|regwhite |char *|char *
1106 s |char*|nextchar |struct RExC_state_t*
1108 s |regnode*|dumpuntil |regnode *start|regnode *node \
1109 |regnode *last|SV* sv|I32 l
1110 s |void |put_byte |SV* sv|int c
1112 s |void |scan_commit |struct RExC_state_t*|struct scan_data_t *data
1113 s |void |cl_anything |struct RExC_state_t*|struct regnode_charclass_class *cl
1114 s |int |cl_is_anything |struct regnode_charclass_class *cl
1115 s |void |cl_init |struct RExC_state_t*|struct regnode_charclass_class *cl
1116 s |void |cl_init_zero |struct RExC_state_t*|struct regnode_charclass_class *cl
1117 s |void |cl_and |struct regnode_charclass_class *cl \
1118 |struct regnode_charclass_class *and_with
1119 s |void |cl_or |struct RExC_state_t*|struct regnode_charclass_class *cl \
1120 |struct regnode_charclass_class *or_with
1121 s |I32 |study_chunk |struct RExC_state_t*|regnode **scanp|I32 *deltap \
1122 |regnode *last|struct scan_data_t *data \
1124 s |I32 |add_data |struct RExC_state_t*|I32 n|char *s
1125 rs |void|re_croak2 |const char* pat1|const char* pat2|...
1126 s |I32 |regpposixcc |struct RExC_state_t*|I32 value
1127 s |void |checkposixcc |struct RExC_state_t*
1130 #if defined(PERL_IN_REGEXEC_C) || defined(PERL_DECL_PROT)
1131 s |I32 |regmatch |regnode *prog
1132 s |I32 |regrepeat |regnode *p|I32 max
1133 s |I32 |regrepeat_hard |regnode *p|I32 max|I32 *lp
1134 s |I32 |regtry |regexp *prog|char *startpos
1135 s |bool |reginclass |regnode *n|U8 *p|STRLEN *lenp|bool do_utf8sv_is_utf8
1136 s |CHECKPOINT|regcppush |I32 parenfloor
1138 s |char*|regcp_set_to |I32 ss
1139 s |void |cache_re |regexp *prog
1140 s |U8* |reghop |U8 *pos|I32 off
1141 s |U8* |reghop3 |U8 *pos|I32 off|U8 *lim
1142 s |U8* |reghopmaybe |U8 *pos|I32 off
1143 s |U8* |reghopmaybe3 |U8 *pos|I32 off|U8 *lim
1144 s |char* |find_byclass |regexp * prog|regnode *c|char *s|char *strend|char *startpos|I32 norun
1145 s |void |to_utf8_substr |regexp * prog
1146 s |void |to_byte_substr |regexp * prog
1149 #if defined(PERL_IN_DUMP_C) || defined(PERL_DECL_PROT)
1150 s |CV* |deb_curcv |I32 ix
1151 s |void |debprof |OP *o
1154 #if defined(PERL_IN_SCOPE_C) || defined(PERL_DECL_PROT)
1155 s |SV* |save_scalar_at |SV **sptr
1158 #if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT)
1177 s |XPVIV* |new_xpviv
1178 s |XPVNV* |new_xpvnv
1179 s |XPVCV* |new_xpvcv
1180 s |XPVAV* |new_xpvav
1181 s |XPVHV* |new_xpvhv
1182 s |XPVMG* |new_xpvmg
1183 s |XPVLV* |new_xpvlv
1184 s |XPVBM* |new_xpvbm
1186 s |void |del_xiv |XPVIV* p
1187 s |void |del_xnv |XPVNV* p
1188 s |void |del_xpv |XPV* p
1189 s |void |del_xpviv |XPVIV* p
1190 s |void |del_xpvnv |XPVNV* p
1191 s |void |del_xpvcv |XPVCV* p
1192 s |void |del_xpvav |XPVAV* p
1193 s |void |del_xpvhv |XPVHV* p
1194 s |void |del_xpvmg |XPVMG* p
1195 s |void |del_xpvlv |XPVLV* p
1196 s |void |del_xpvbm |XPVBM* p
1197 s |void |del_xrv |XRV* p
1198 s |void |sv_unglob |SV* sv
1199 s |void |not_a_number |SV *sv
1200 s |I32 |visit |SVFUNC_t f
1201 s |void |sv_add_backref |SV *tsv|SV *sv
1202 s |void |sv_del_backref |SV *sv
1204 s |void |del_sv |SV *p
1206 # if !defined(NV_PRESERVES_UV)
1207 s |int |sv_2iuv_non_preserve |SV *sv|I32 numtype
1209 s |I32 |expect_number |char** pattern
1211 # if defined(USE_ITHREADS)
1212 s |SV* |gv_share |SV *sv|CLONE_PARAMS *param
1214 #if defined(PERL_COPY_ON_WRITE)
1215 sM |void |sv_release_COW |SV *sv|char *pvx|STRLEN cur|STRLEN len \
1220 #if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT)
1222 s |void |force_next |I32 type
1223 s |char* |force_version |char *start|int guessing
1224 s |char* |force_word |char *start|int token|int check_keyword \
1225 |int allow_pack|int allow_tick
1226 s |SV* |tokeq |SV *sv
1227 s |int |pending_ident
1228 s |char* |scan_const |char *start
1229 s |char* |scan_formline |char *s
1230 s |char* |scan_heredoc |char *s
1231 s |char* |scan_ident |char *s|char *send|char *dest \
1232 |STRLEN destlen|I32 ck_uni
1233 s |char* |scan_inputsymbol|char *start
1234 s |char* |scan_pat |char *start|I32 type
1235 s |char* |scan_str |char *start|int keep_quoted|int keep_delims
1236 s |char* |scan_subst |char *start
1237 s |char* |scan_trans |char *start
1238 s |char* |scan_word |char *s|char *dest|STRLEN destlen \
1239 |int allow_package|STRLEN *slp
1240 s |char* |skipspace |char *s
1241 s |char* |swallow_bom |U8 *s
1242 s |void |checkcomma |char *s|char *name|char *what
1243 s |void |force_ident |char *s|int kind
1244 s |void |incline |char *s
1245 s |int |intuit_method |char *s|GV *gv
1246 s |int |intuit_more |char *s
1247 s |I32 |lop |I32 f|int x|char *s
1248 s |void |missingterm |char *s
1249 s |void |no_op |char *what|char *s
1253 s |I32 |sublex_start
1254 s |char * |filter_gets |SV *sv|PerlIO *fp|STRLEN append
1255 s |HV * |find_in_my_stash|char *pkgname|I32 len
1256 s |SV* |new_constant |char *s|STRLEN len|const char *key|SV *sv \
1257 |SV *pv|const char *type
1258 # if defined(DEBUGGING)
1259 s |void |tokereport |char *thing|char *s|I32 rv
1261 s |int |ao |int toketype
1263 s |char* |incl_perldb
1265 s |I32 |utf16_textfilter|int idx|SV *sv|int maxlen
1266 s |I32 |utf16rev_textfilter|int idx|SV *sv|int maxlen
1268 # if defined(PERL_CR_FILTER)
1269 s |I32 |cr_textfilter |int idx|SV *sv|int maxlen
1273 #if defined(PERL_IN_UNIVERSAL_C) || defined(PERL_DECL_PROT)
1274 s |SV*|isa_lookup |HV *stash|const char *name|HV *name_stash|int len|int level
1277 #if defined(PERL_IN_LOCALE_C) || defined(PERL_DECL_PROT)
1278 s |char* |stdize_locale |char* locs
1281 #if defined(PERL_IN_UTIL_C) || defined(PERL_DECL_PROT)
1282 s |COP* |closest_cop |COP *cop|OP *o
1288 Apd |void |sv_setsv_flags |SV* dsv|SV* ssv|I32 flags
1289 Apd |void |sv_catpvn_flags|SV* sv|const char* ptr|STRLEN len|I32 flags
1290 Apd |void |sv_catsv_flags |SV* dsv|SV* ssv|I32 flags
1291 Apd |STRLEN |sv_utf8_upgrade_flags|SV *sv|I32 flags
1292 Apd |char* |sv_pvn_force_flags|SV* sv|STRLEN* lp|I32 flags
1293 Apd |char* |sv_2pv_flags |SV* sv|STRLEN* lp|I32 flags
1294 Apd |void |sv_copypv |SV* dsv|SV* ssv
1295 Ap |char* |my_atof2 |const char *s|NV* value
1296 Apn |int |my_socketpair |int family|int type|int protocol|int fd[2]
1298 #if defined(USE_PERLIO) && !defined(USE_SFIO)
1299 Ap |int |PerlIO_close |PerlIO *
1300 Ap |int |PerlIO_fill |PerlIO *
1301 Ap |int |PerlIO_fileno |PerlIO *
1302 Ap |int |PerlIO_eof |PerlIO *
1303 Ap |int |PerlIO_error |PerlIO *
1304 Ap |int |PerlIO_flush |PerlIO *
1305 Ap |void |PerlIO_clearerr |PerlIO *
1306 Ap |void |PerlIO_set_cnt |PerlIO *|int
1307 Ap |void |PerlIO_set_ptrcnt |PerlIO *|STDCHAR *|int
1308 Ap |void |PerlIO_setlinebuf |PerlIO *
1309 Ap |SSize_t|PerlIO_read |PerlIO *|void *|Size_t
1310 Ap |SSize_t|PerlIO_write |PerlIO *|const void *|Size_t
1311 Ap |SSize_t|PerlIO_unread |PerlIO *|const void *|Size_t
1312 Ap |Off_t |PerlIO_tell |PerlIO *
1313 Ap |int |PerlIO_seek |PerlIO *|Off_t|int
1315 Ap |STDCHAR *|PerlIO_get_base |PerlIO *
1316 Ap |STDCHAR *|PerlIO_get_ptr |PerlIO *
1317 Ap |int |PerlIO_get_bufsiz |PerlIO *
1318 Ap |int |PerlIO_get_cnt |PerlIO *
1320 Ap |PerlIO *|PerlIO_stdin
1321 Ap |PerlIO *|PerlIO_stdout
1322 Ap |PerlIO *|PerlIO_stderr
1323 #endif /* PERLIO_LAYERS */
1325 p |void |deb_stack_all
1326 #ifdef PERL_IN_DEB_C
1327 s |void |deb_stack_n |SV** stack_base|I32 stack_min \
1328 |I32 stack_max|I32 mark_min|I32 mark_max
1331 pd |PADLIST*|pad_new |padnew_flags flags
1332 pd |void |pad_undef |CV* cv|CV* outercv
1333 pd |PADOFFSET|pad_add_name |char *name\
1334 |HV* typestash|HV* ourstash \
1336 pd |PADOFFSET|pad_add_anon |SV* sv|OPCODE op_type
1337 pd |void |pad_check_dup |char* name|bool is_our|HV* ourstash
1339 pd |void |pad_setsv |PADOFFSET po|SV* sv
1341 pd |void |pad_block_start|int full
1342 pd |void |pad_tidy |padtidy_type type
1343 pd |void |do_dump_pad |I32 level|PerlIO *file \
1344 |PADLIST *padlist|int full
1345 pd |void |pad_fixup_inner_anons|PADLIST *padlist|CV *old_cv|CV *new_cv
1347 pd |void |pad_push |PADLIST *padlist|int depth|int has_args
1349 #if defined(PERL_IN_PAD_C) || defined(PERL_DECL_PROT)
1350 sd |PADOFFSET|pad_findlex |char* name|PADOFFSET newoff|U32 seq \
1351 |CV* startcv|I32 cx_ix|I32 saweval|U32 flags
1352 # if defined(DEBUGGING)
1353 sd |void |cv_dump |CV *cv|char *title
1355 s |CV* |cv_clone2 |CV *proto|CV *outside