X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=embed.fnc;h=cc3cf79edb202c7d05425c827411facd3e8490f8;hb=953f6acfa20ec275ec39a552dfac8124bd93ebdf;hp=79944b422b6b8b9bd60b387fc66e368b5661eaf4;hpb=bcfe2509c9c690ad84f6fd6d67302d2fbefea805;p=p5sagit%2Fp5-mst-13.2.git diff --git a/embed.fnc b/embed.fnc index 79944b4..cc3cf79 100644 --- a/embed.fnc +++ b/embed.fnc @@ -87,6 +87,7 @@ Aanop |Malloc_t|realloc |Malloc_t where|MEM_SIZE nbytes Anop |Free_t |mfree |Malloc_t where #if defined(MYMALLOC) npR |MEM_SIZE|malloced_size |NN void *p +npR |MEM_SIZE|malloc_good_size |size_t nbytes #endif AnpR |void* |get_context @@ -100,22 +101,25 @@ START_EXTERN_C Ap |SV* |amagic_call |NN SV* left|NN SV* right|int method|int dir Ap |bool |Gv_AMupdate |NN HV* stash ApR |CV* |gv_handler |NULLOK HV* stash|I32 id +: Used in perly.y p |OP* |append_elem |I32 optype|NULLOK OP* first|NULLOK OP* last +: Used in perly.y p |OP* |append_list |I32 optype|NULLOK LISTOP* first|NULLOK LISTOP* last +: FIXME - this is only called by pp_chown. They should be merged. p |I32 |apply |I32 type|NN SV** mark|NN SV** sp ApM |void |apply_attrs_string|NN const char *stashpv|NN CV *cv|NN const char *attrstr|STRLEN len Apd |void |av_clear |NN AV *av Apd |SV* |av_delete |NN AV *av|I32 key|I32 flags ApdR |bool |av_exists |NN AV *av|I32 key Apd |void |av_extend |NN AV *av|I32 key -pR |AV* |av_fake |I32 size|NN SV **strp ApdR |SV** |av_fetch |NN AV *av|I32 key|I32 lval Apd |void |av_fill |NN AV *av|I32 fill -ApdR |I32 |av_len |NN const AV *av +ApdR |I32 |av_len |NN AV *av ApdR |AV* |av_make |I32 size|NN SV **strp Apd |SV* |av_pop |NN AV *av ApdoxM |void |av_create_and_push|NN AV **const avp|NN SV *const val Apd |void |av_push |NN AV *av|NN SV *val +: Used in scope.c, and by Data::Alias EXp |void |av_reify |NN AV *av ApdR |SV* |av_shift |NN AV *av Apd |SV** |av_store |NN AV *av|I32 key|NULLOK SV *val @@ -127,13 +131,19 @@ Apo |IV* |av_iter_p |NN AV *av #if defined(PERL_IN_AV_C) || defined(PERL_DECL_PROT) s |MAGIC* |get_aux_mg |NN AV *av #endif +: Used in perly.y pR |OP* |bind_match |I32 type|NN OP *left|NN OP *right +: Used in perly.y pR |OP* |block_end |I32 floor|NULLOK OP* seq ApR |I32 |block_gimme +: Used in perly.y pR |int |block_start |int full +: Used in perl.c p |void |boot_core_UNIVERSAL +: Used in perl.c p |void |boot_core_PerlIO Ap |void |call_list |I32 oldscope|NN AV *paramList +: Used in serveral source files pR |bool |cando |Mode_t mode|bool effective|NN const Stat_t* statbufp ApR |U32 |cast_ulong |NV f ApR |I32 |cast_i32 |NV f @@ -142,13 +152,18 @@ ApR |UV |cast_uv |NV f #if !defined(HAS_TRUNCATE) && !defined(HAS_CHSIZE) && defined(F_FREESP) ApR |I32 |my_chsize |int fd|Off_t length #endif +: Used in perly.y pR |OP* |convert |I32 optype|I32 flags|NULLOK OP* o +: Used in op.c and perl.c pM |PERL_CONTEXT* |create_eval_scope|U32 flags : croak()'s first parm can be NULL. Otherwise, mod_perl breaks. Afprd |void |croak |NULLOK const char* pat|... Apr |void |vcroak |NULLOK const char* pat|NULLOK va_list* args +Aprd |void |croak_xs_usage |NN const CV *const cv \ + |NN const char *const params + #if defined(PERL_IMPLICIT_CONTEXT) -Afnrp |void |croak_nocontext|NN const char* pat|... +Afnrp |void |croak_nocontext|NULLOK const char* pat|... Afnp |OP* |die_nocontext |NN const char* pat|... Afnp |void |deb_nocontext |NN const char* pat|... Afnp |char* |form_nocontext |NN const char* pat|... @@ -156,21 +171,22 @@ Anp |void |load_module_nocontext|U32 flags|NN SV* name|NULLOK SV* ver|... Afnp |SV* |mess_nocontext |NN const char* pat|... Afnp |void |warn_nocontext |NN const char* pat|... Afnp |void |warner_nocontext|U32 err|NN const char* pat|... -Afnp |SV* |newSVpvf_nocontext|NN const char* pat|... -Afnp |void |sv_catpvf_nocontext|NN SV* sv|NN const char* pat|... -Afnp |void |sv_setpvf_nocontext|NN SV* sv|NN const char* pat|... -Afnp |void |sv_catpvf_mg_nocontext|NN SV* sv|NN const char* pat|... -Afnp |void |sv_setpvf_mg_nocontext|NN SV* sv|NN const char* pat|... +Afnp |SV* |newSVpvf_nocontext|NN const char *const pat|... +Afnp |void |sv_catpvf_nocontext|NN SV *const sv|NN const char *const pat|... +Afnp |void |sv_setpvf_nocontext|NN SV *const sv|NN const char *const pat|... +Afnp |void |sv_catpvf_mg_nocontext|NN SV *const sv|NN const char *const pat|... +Afnp |void |sv_setpvf_mg_nocontext|NN SV *const sv|NN const char *const pat|... Afnp |int |fprintf_nocontext|NN PerlIO *stream|NN const char *format|... Afnp |int |printf_nocontext|NN const char *format|... #endif -bp |void |cv_ckproto |NN const CV* cv|NULLOK const GV* gv\ - |NULLOK const char* p +: Used in sv.c p |void |cv_ckproto_len |NN const CV* cv|NULLOK const GV* gv\ |NULLOK const char* p|const STRLEN len +: Used in pp.c and pp_sys.c pd |CV* |cv_clone |NN CV* proto ApdR |SV* |gv_const_sv |NN GV* gv -ApdR |SV* |cv_const_sv |NULLOK CV* cv +ApdR |SV* |cv_const_sv |NULLOK const CV *const cv +: Used in pad.c pR |SV* |op_const_sv |NULLOK const OP* o|NULLOK CV* cv Apd |void |cv_undef |NN CV* cv Ap |void |cx_dump |NN PERL_CONTEXT* cx @@ -179,9 +195,12 @@ Ap |void |filter_del |NN filter_t funcp ApR |I32 |filter_read |int idx|NN SV *buf_sv|int maxlen ApPR |char** |get_op_descs ApPR |char** |get_op_names +: FIXME discussion on p5p pPR |const char* |get_no_modify +: FIXME discussion on p5p pPR |U32* |get_opargs ApPR |PPADDR_t*|get_ppaddr +: Used by CXINC, which appears to be in widespread use EXpR |I32 |cxinc Afp |void |deb |NN const char* pat|... Ap |void |vdeb |NN const char* pat|NULLOK va_list* args @@ -191,18 +210,28 @@ Ap |I32 |debstack Ap |I32 |debstackptrs Ap |char* |delimcpy |NN char* to|NN const char* toend|NN const char* from \ |NN const char* fromend|int delim|NN I32* retlen +: Used in op.c, perl.c pM |void |delete_eval_scope +: Used in various files p |void |deprecate |NN const char *const s +: Used in various files p |void |deprecate_old |NN const char *const s Afp |OP* |die |NULLOK const char* pat|... -p |OP* |vdie |NULLOK const char* pat|NULLOK va_list* args +#if defined(PERL_IN_UTIL_C) || defined(PERL_DECL_PROT) +s |OP* |vdie |NULLOK const char* pat|NULLOK va_list* args +#endif +: Used in util.c p |OP* |die_where |NULLOK const char* message|STRLEN msglen Ap |void |dounwind |I32 cxix +: FIXME pmb |bool |do_aexec |NULLOK SV* really|NN SV** mark|NN SV** sp +: Used in pp_sys.c p |bool |do_aexec5 |NULLOK SV* really|NN SV** mark|NN SV** sp|int fd|int do_report Ap |int |do_binmode |NN PerlIO *fp|int iotype|int mode +: Used in pp.c p |void |do_chop |NN SV *astr|NN SV *sv Ap |bool |do_close |NULLOK GV* gv|bool not_implicit +: Defined in doio.c, used only in pp_sys.c p |bool |do_eof |NN GV* gv #ifdef PERL_DEFAULT_DO_EXEC3_IMPLEMENTATION @@ -220,18 +249,25 @@ Ap |int |do_spawn_nowait|NN char* cmd p |bool |do_exec3 |NN const char *incmd|int fd|int do_report #endif p |void |do_execfree -#ifdef PERL_IN_DOIO_C +#if defined(PERL_IN_DOIO_C) || defined(PERL_DECL_PROT) s |void |exec_failed |NN const char *cmd|int fd|int do_report #endif #if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM) +: Defined in doio.c, used only in pp_sys.c p |I32 |do_ipcctl |I32 optype|NN SV** mark|NN SV** sp +: Defined in doio.c, used only in pp_sys.c p |I32 |do_ipcget |I32 optype|NN SV** mark|NN SV** sp +: Defined in doio.c, used only in pp_sys.c p |I32 |do_msgrcv |NN SV** mark|NN SV** sp +: Defined in doio.c, used only in pp_sys.c p |I32 |do_msgsnd |NN SV** mark|NN SV** sp +: Defined in doio.c, used only in pp_sys.c p |I32 |do_semop |NN SV** mark|NN SV** sp +: Defined in doio.c, used only in pp_sys.c p |I32 |do_shmio |I32 optype|NN SV** mark|NN SV** sp #endif Ap |void |do_join |NN SV *sv|NN SV *delim|NN SV **mark|NN SV **sp +: Used in pp.c and pp_hot.c p |OP* |do_kv Apmb |bool |do_open |NN GV* gv|NN const char* name|I32 len|int as_raw \ |int rawmode|int rawperm|NULLOK PerlIO* supplied_fp @@ -242,17 +278,28 @@ Ap |bool |do_openn |NN GV *gv|NN const char *oname|I32 len \ |int as_raw|int rawmode|int rawperm \ |NULLOK PerlIO *supplied_fp|NULLOK SV **svp \ |I32 num +: Used in pp_hot.c and pp_sys.c p |bool |do_print |NULLOK SV* sv|NN PerlIO* fp +: Used in pp_sys.c pR |OP* |do_readline +: Used in pp.c p |I32 |do_chomp |NN SV* sv +: Defined in doio.c, used only in pp_sys.c p |bool |do_seek |NULLOK GV* gv|Off_t pos|int whence Ap |void |do_sprintf |NN SV* sv|I32 len|NN SV** sarg +: Defined in doio.c, used only in pp_sys.c p |Off_t |do_sysseek |NN GV* gv|Off_t pos|int whence +: Defined in doio.c, used only in pp_sys.c pR |Off_t |do_tell |NN GV* gv +: Defined in doop.c, used only in pp.c p |I32 |do_trans |NN SV* sv +: Used in my.c and pp.c p |UV |do_vecget |NN SV* sv|I32 offset|I32 size +: Defined in doop.c, used only in mg.c (with /* XXX slurp this routine */) p |void |do_vecset |NN SV* sv +: Defined in doop.c, used only in pp.c p |void |do_vop |I32 optype|NN SV* sv|NN SV* left|NN SV* right +: Used in perly.y p |OP* |dofile |NN OP* term|I32 force_builtin ApR |I32 |dowantarray Ap |void |dump_all @@ -269,17 +316,25 @@ Ap |void |dump_sub |NN const GV* gv Apd |void |fbm_compile |NN SV* sv|U32 flags ApdR |char* |fbm_instr |NN unsigned char* big|NN unsigned char* bigend \ |NN SV* littlestr|U32 flags +: Defined in util.c, used only in perl.c p |char* |find_script |NN const char *scriptname|bool dosearch \ |NULLOK const char *const *const search_ext|I32 flags -p |OP* |force_list |NULLOK OP* arg -p |OP* |fold_constants |NN OP *o +#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT) +s |OP* |force_list |NULLOK OP* arg +: FIXME +s |OP* |fold_constants |NN OP *o +#endif Afpd |char* |form |NN const char* pat|... Ap |char* |vform |NN const char* pat|NULLOK va_list* args Ap |void |free_tmps -p |OP* |gen_constant_list|NULLOK OP* o +#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT) +s |OP* |gen_constant_list|NULLOK OP* o +#endif #if !defined(HAS_GETENV_LEN) +: Used in hv.c p |char* |getenv_len |NN const char *env_elem|NN unsigned long *len #endif +: Used in pp_ctl.c and pp_hot.c pox |void |get_db_sub |NULLOK SV **svp|NN CV *cv Ap |void |gp_free |NULLOK GV* gv Ap |GP* |gp_ref |NULLOK GP* gp @@ -296,12 +351,16 @@ Ap |GV* |gv_fetchfile_flags|NN const char *const name|const STRLEN len\ |const U32 flags Apd |GV* |gv_fetchmeth |NULLOK HV* stash|NN const char* name|STRLEN len|I32 level Apd |GV* |gv_fetchmeth_autoload |NULLOK HV* stash|NN const char* name|STRLEN len|I32 level -Apdmb |GV* |gv_fetchmethod |NULLOK HV* stash|NN const char* name -Apd |GV* |gv_fetchmethod_autoload|NULLOK HV* stash|NN const char* name|I32 autoload +Apdmb |GV* |gv_fetchmethod |NN HV* stash|NN const char* name +Apd |GV* |gv_fetchmethod_autoload|NN HV* stash|NN const char* name \ + |I32 autoload +ApdM |GV* |gv_fetchmethod_flags|NN HV* stash|NN const char* name \ + |U32 flags Ap |GV* |gv_fetchpv |NN const char *nambeg|I32 add|const svtype sv_type Ap |void |gv_fullname |NN SV* sv|NN const GV* gv Apmb |void |gv_fullname3 |NN SV* sv|NN const GV* gv|NULLOK const char* prefix Ap |void |gv_fullname4 |NN SV* sv|NN const GV* gv|NULLOK const char* prefix|bool keepmain +: Used in scope.c pMox |GP * |newGP |NN GV *const gv Ap |void |gv_init |NN GV* gv|NULLOK HV* stash|NN const char* name|STRLEN len|int multi Ap |void |gv_name_set |NN GV* gv|NN const char *name|U32 len|U32 flags @@ -309,6 +368,7 @@ Apd |HV* |gv_stashpv |NN const char* name|I32 flags Apd |HV* |gv_stashpvn |NN const char* name|U32 namelen|I32 flags Apd |HV* |gv_stashsv |NN SV* sv|I32 flags Apd |void |hv_clear |NULLOK HV *hv +: used in SAVEHINTS() and op.c poM |HV * |hv_copy_hints_hv|NULLOK HV *const ohv Ap |void |hv_delayfree_ent|NN HV *hv|NULLOK HE *entry Abmd |SV* |hv_delete |NULLOK HV *hv|NN const char *key|I32 klen \ @@ -335,14 +395,26 @@ ApMdR |HE* |hv_iternext_flags|NN HV *hv|I32 flags ApdR |SV* |hv_iterval |NN HV *hv|NN HE *entry Ap |void |hv_ksplit |NN HV *hv|IV newmax Apdbm |void |hv_magic |NN HV *hv|NULLOK GV *gv|int how +: Used in B.xs XEdpoM |HV * |refcounted_he_chain_2hv|NULLOK const struct refcounted_he *c +: Used in APItest.xs XEpoM |SV * |refcounted_he_fetch|NULLOK const struct refcounted_he *chain \ |NULLOK SV *keysv|NULLOK const char *key \ |STRLEN klen, int flags, U32 hash +: Used in various files dpoM |void |refcounted_he_free|NULLOK struct refcounted_he *he +: Used in various files XEdpoM |struct refcounted_he *|refcounted_he_new \ |NULLOK struct refcounted_he *const parent \ |NULLOK SV *const key|NULLOK SV *const value +#if defined(PERL_IN_HV_C) || defined(PERL_DECL_PROT) +s |struct refcounted_he * |refcounted_he_new_common \ + |NULLOK struct refcounted_he *const parent \ + |NN const char *const key_p \ + |const STRLEN key_len|const char flags \ + |char value_type|NN const void *value \ + |const STRLEN value_len +#endif Abmd |SV** |hv_store |NULLOK HV *hv|NULLOK const char *key \ |I32 klen|NULLOK SV *val|U32 hash Abmd |HE* |hv_store_ent |NULLOK HV *hv|NULLOK SV *key|NULLOK SV *val\ @@ -355,16 +427,22 @@ ApP |I32 |ibcmp_locale |NN const char* a|NN const char* b|I32 len Apd |I32 |ibcmp_utf8 |NN const char *s1|NULLOK char **pe1|UV l1 \ |bool u1|NN const char *s2|NULLOK char **pe2 \ |UV l2|bool u2 -pR |bool |ingroup |Gid_t testgid|bool effective +#if defined(PERL_IN_DOIO_C) || defined(PERL_DECL_PROT) +sR |bool |ingroup |Gid_t testgid|bool effective +#endif +: Used in toke.c p |void |init_argv_symbols|int argc|NN char **argv +: Used in mg.c p |void |init_debugger Ap |void |init_stacks Ap |void |init_tm |NN struct tm *ptm +: Used in perly.y pd |U32 |intro_my ApPR |char* |instr |NN const char* big|NN const char* little +: Used in sv.c p |bool |io_close |NN IO* io|bool not_implicit +: Used in perly.y pR |OP* |invert |NULLOK OP* cmd -dpR |bool |is_gv_magical |NN const char *name|STRLEN len|U32 flags ApR |I32 |is_lvalue_sub ApPR |U32 |to_uni_upper_lc|U32 c ApPR |U32 |to_uni_title_lc|U32 c @@ -421,20 +499,29 @@ ApR |bool |is_utf8_print |NN const U8 *p ApR |bool |is_utf8_punct |NN const U8 *p ApR |bool |is_utf8_xdigit |NN const U8 *p ApR |bool |is_utf8_mark |NN const U8 *p +: Used in perly.y p |OP* |jmaybe |NN OP *o +: Used in pp.c pP |I32 |keyword |NN const char *name|I32 len|bool all_keywords Ap |void |leave_scope |I32 base +: Used in pp_ctl.c, and by Data::Alias EXp |void |lex_end +: Used in various files p |void |lex_start |NULLOK SV* line|NULLOK PerlIO *rsfp|bool new_filter Ap |void |op_null |NN OP* o +: FIXME. Used by Data::Alias EXp |void |op_clear |NN OP* o Ap |void |op_refcnt_lock Ap |void |op_refcnt_unlock -p |OP* |linklist |NN OP* o +#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT) +s |OP* |linklist |NN OP *o +s |OP* |listkids |NULLOK OP* o +#endif +: Used in S_doeval in pp_ctl.c p |OP* |list |NULLOK OP* o -p |OP* |listkids |NULLOK OP* o Apd |void |load_module|U32 flags|NN SV* name|NULLOK SV* ver|... Ap |void |vload_module|U32 flags|NN SV* name|NULLOK SV* ver|NULLOK va_list* args +: Used in perly.y p |OP* |localize |NN OP *o|I32 lex ApdR |I32 |looks_like_number|NN SV *const sv Apd |UV |grok_bin |NN const char* start|NN STRLEN* len_p|NN I32* flags|NULLOK NV *result @@ -442,6 +529,7 @@ Apd |UV |grok_hex |NN const char* start|NN STRLEN* len_p|NN I32* flags|NULLOK NV Apd |int |grok_number |NN const char *pv|STRLEN len|NULLOK UV *valuep ApdR |bool |grok_numeric_radix|NN const char **sp|NN const char *send Apd |UV |grok_oct |NN const char* start|NN STRLEN* len_p|NN I32* flags|NULLOK NV *result +: These are all indirectly referenced by globals.c. This is somewhat annoying. p |int |magic_clearenv |NN SV* sv|NN MAGIC* mg p |int |magic_clear_all_env|NN SV* sv|NN MAGIC* mg dp |int |magic_clearhint|NN SV* sv|NN MAGIC* mg @@ -489,21 +577,24 @@ p |int |magic_setutf8 |NN SV* sv|NN MAGIC* mg p |int |magic_set_all_env|NN SV* sv|NN MAGIC* mg p |U32 |magic_sizepack |NN SV* sv|NN MAGIC* mg p |int |magic_wipepack |NN SV* sv|NN MAGIC* mg -p |void |magicname |NN const char* sym|NULLOK const char* name|I32 namlen Ap |void |markstack_grow #if defined(USE_LOCALE_COLLATE) p |int |magic_setcollxfrm|NN SV* sv|NN MAGIC* mg +: Defined in locale.c, used only in sv.c p |char* |mem_collxfrm |NN const char* s|STRLEN len|NN STRLEN* xlen #endif Afp |SV* |mess |NN const char* pat|... Ap |SV* |vmess |NN const char* pat|NULLOK va_list* args +: FIXME - either make it public, or stop exporting it. (Data::Alias uses this) +: Used in gv.c, op.c, toke.c EXp |void |qerror |NN SV* err Apd |void |sortsv |NULLOK SV** array|size_t num_elts|NN SVCOMPARE_t cmp Apd |void |sortsv_flags |NULLOK SV** array|size_t num_elts|NN SVCOMPARE_t cmp|U32 flags Apd |int |mg_clear |NN SV* sv Apd |int |mg_copy |NN SV *sv|NN SV *nsv|NULLOK const char *key \ |I32 klen -pd |void |mg_localize |NN SV* sv|NN SV* nsv +: Defined in mg.c, used only in scope.c +pd |void |mg_localize |NN SV* sv|NN SV* nsv|bool setmagic ApdR |MAGIC* |mg_find |NULLOK const SV* sv|int type Apd |int |mg_free |NN SV* sv Apd |int |mg_get |NN SV* sv @@ -512,10 +603,11 @@ Apd |void |mg_magical |NN SV* sv Apd |int |mg_set |NN SV* sv Ap |I32 |mg_size |NN SV* sv Ap |void |mini_mktime |NN struct tm *ptm +: Used by MOD(), which Data::Alias uses EXp |OP* |mod |NULLOK OP* o|I32 type -p |int |mode_from_discipline|NULLOK SV* discp +: Used in op.c and pp_sys.c +p |int |mode_from_discipline|NULLOK const char* s|STRLEN len Ap |const char* |moreswitches |NN const char* s -p |OP* |my |NN OP* o Ap |NV |my_atof |NN const char *s #if (!defined(HAS_MEMCPY) && !defined(HAS_BCOPY)) || (!defined(HAS_MEMMOVE) && !defined(HAS_SAFE_MEMCPY) && !defined(HAS_SAFE_BCOPY)) Anp |char* |my_bcopy |NN const char* from|NN char* to|I32 len @@ -547,6 +639,7 @@ ApPa |short |my_swap |short s ApPa |long |my_htonl |long l ApPa |long |my_ntohl |long l #endif +: Used in pp_ctl.c p |void |my_unexec Apa |OP* |newANONLIST |NULLOK OP* o Apa |OP* |newANONHASH |NULLOK OP* o @@ -594,23 +687,23 @@ Apa |OP* |newPADOP |I32 type|I32 flags|NN SV* sv #endif Apa |OP* |newPMOP |I32 type|I32 flags Apa |OP* |newPVOP |I32 type|I32 flags|NULLOK char* pv -Apa |SV* |newRV |NN SV* sv -Apda |SV* |newRV_noinc |NN SV* sv -Apda |SV* |newSV |STRLEN len +Apa |SV* |newRV |NN SV *const sv +Apda |SV* |newRV_noinc |NN SV *const sv +Apda |SV* |newSV |const STRLEN len Apa |OP* |newSVREF |NN OP* o Apa |OP* |newSVOP |I32 type|I32 flags|NN SV* sv -Apda |SV* |newSViv |IV i -Apda |SV* |newSVuv |UV u -Apda |SV* |newSVnv |NV n -Apda |SV* |newSVpv |NULLOK const char* s|STRLEN len -Apda |SV* |newSVpvn |NULLOK const char* s|STRLEN len -Apda |SV* |newSVpvn_flags |NULLOK const char* s|STRLEN len|U32 flags -Apda |SV* |newSVhek |NULLOK const HEK *hek +Apda |SV* |newSViv |const IV i +Apda |SV* |newSVuv |const UV u +Apda |SV* |newSVnv |const NV n +Apda |SV* |newSVpv |NULLOK const char *const s|const STRLEN len +Apda |SV* |newSVpvn |NULLOK const char *const s|const STRLEN len +Apda |SV* |newSVpvn_flags |NULLOK const char *const s|const STRLEN len|const U32 flags +Apda |SV* |newSVhek |NULLOK const HEK *const hek Apda |SV* |newSVpvn_share |NULLOK const char* s|I32 len|U32 hash -Afpda |SV* |newSVpvf |NN const char* pat|... -Apa |SV* |vnewSVpvf |NN const char* pat|NULLOK va_list* args -Apd |SV* |newSVrv |NN SV* rv|NULLOK const char* classname -Apda |SV* |newSVsv |NULLOK SV* old +Afpda |SV* |newSVpvf |NN const char *const pat|... +Apa |SV* |vnewSVpvf |NN const char *const pat|NULLOK va_list *const args +Apd |SV* |newSVrv |NN SV *const rv|NULLOK const char *const classname +Apda |SV* |newSVsv |NULLOK SV *const old Apda |SV* |newSV_type |const svtype type Apa |OP* |newUNOP |I32 type|I32 flags|NULLOK OP* first Apa |OP* |newWHENOP |NULLOK OP* cond|NN OP* block @@ -628,28 +721,41 @@ Apd |SV* |vnumify |NN SV *vs Apd |SV* |vnormal |NN SV *vs Apd |SV* |vstringify |NN SV *vs Apd |int |vcmp |NN SV *lhv|NN SV *rhv +: Used in pp_hot.c and pp_sys.c p |PerlIO*|nextargv |NN GV* gv ApP |char* |ninstr |NN const char* big|NN const char* bigend \ |NN const char* little|NN const char* lend -pr |OP* |oopsCV |NN OP* o Ap |void |op_free |NULLOK OP* arg +: Used in perly.y #ifdef PERL_MAD p |OP* |package |NN OP* o #else p |void |package |NN OP* o #endif +: Used in op.c pd |PADOFFSET|pad_alloc |I32 optype|U32 tmptype +: Used in toke.c and perly.y p |PADOFFSET|allocmy |NN const char *const name +: Used in op.c and toke.c pdR |PADOFFSET|pad_findmy |NN const char* name Ap |PADOFFSET|find_rundefsvoffset | +: Used in perly.y pR |OP* |oopsAV |NN OP* o +: Used in perly.y pR |OP* |oopsHV |NN OP* o +: Defined in pad.c, used only in op.c pd |void |pad_leavemy Apd |SV* |pad_sv |PADOFFSET po +: Defined in pad.c, used only in op.c pd |void |pad_free |PADOFFSET po -pd |void |pad_reset +#if defined(PERL_IN_PAD_C) || defined(PERL_DECL_PROT) +sd |void |pad_reset +#endif +: Used in op.c pd |void |pad_swipe |PADOFFSET po|bool refadjust +: FIXME p |void |peep |NULLOK OP* o +: Defined in doio.c, used only in pp_hot.c dopM |PerlIO*|start_glob |NN SV *tmpglob|NN IO *io #if defined(USE_REENTRANT_API) Ap |void |reentrant_size @@ -683,17 +789,23 @@ Apd |void |require_pv |NN const char* pv Apd |void |pack_cat |NN SV *cat|NN const char *pat|NN const char *patend \ |NN SV **beglist|NN SV **endlist|NN SV ***next_in_list|U32 flags Apd |void |packlist |NN SV *cat|NN const char *pat|NN const char *patend|NN SV **beglist|NN SV **endlist -#ifdef PERL_USES_PL_PIDSTATUS -p |void |pidgone |Pid_t pid|int status +#if defined(PERL_USES_PL_PIDSTATUS) && defined(PERL_IN_UTIL_C) +s |void |pidgone |Pid_t pid|int status #endif Ap |void |pmflag |NN U32* pmfl|int ch +: Used in perly.y p |OP* |pmruntime |NN OP *o|NN OP *expr|bool isreg -p |OP* |pmtrans |NN OP* o|NN OP* expr|NN OP* repl +#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT) +s |OP* |pmtrans |NN OP* o|NN OP* expr|NN OP* repl +#endif Ap |void |pop_scope +: Used in perly.y p |OP* |prepend_elem |I32 optype|NULLOK OP* head|NULLOK OP* tail Ap |void |push_scope Amb |OP* |ref |NULLOK OP* o|I32 type -p |OP* |refkids |NULLOK OP* o|I32 type +#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT) +s |OP* |refkids |NULLOK OP* o|I32 type +#endif Ap |void |regdump |NN const regexp* r Ap |void |regdump |NN const regexp* r Ap |SV* |regclass_swash |NULLOK const regexp *prog \ @@ -704,13 +816,14 @@ Ap |I32 |pregexec |NN REGEXP * const prog|NN char* stringarg \ |NN SV* screamer|U32 nosave Ap |void |pregfree |NULLOK REGEXP* r Ap |void |pregfree2 |NN REGEXP *rx +: FIXME - is anything in re using this now? EXp |REGEXP*|reg_temp_copy |NN REGEXP* r Ap |void |regfree_internal|NN REGEXP *const rx #if defined(USE_ITHREADS) Ap |void* |regdupe_internal|NN REGEXP * const r|NN CLONE_PARAMS* param #endif -Ap |REGEXP*|pregcomp |NN const SV * const pattern|const U32 flags -Ap |REGEXP*|re_compile |NN const SV * const pattern|U32 flags +Ap |REGEXP*|pregcomp |NN SV * const pattern|const U32 flags +Ap |REGEXP*|re_compile |NN SV * const pattern|U32 flags Ap |char* |re_intuit_start|NN REGEXP * const rx|NULLOK SV* sv|NN char* strpos \ |NN char* strend|const U32 flags \ |NULLOK re_scream_pos_data *data @@ -731,24 +844,35 @@ Ap |SV*|reg_named_buff_nextkey |NN REGEXP * const rx|const U32 flags Ap |SV*|reg_named_buff_scalar |NN REGEXP * const rx|const U32 flags Ap |SV*|reg_named_buff_all |NN REGEXP * const rx|const U32 flags +: FIXME - is anything in re using this now? EXp |void|reg_numbered_buff_fetch|NN REGEXP * const rx|const I32 paren|NULLOK SV * const sv +: FIXME - is anything in re using this now? EXp |void|reg_numbered_buff_store|NN REGEXP * const rx|const I32 paren|NULLOK SV const * const value +: FIXME - is anything in re using this now? EXp |I32|reg_numbered_buff_length|NN REGEXP * const rx|NN const SV * const sv|const I32 paren +: FIXME - is anything in re using this now? EXp |SV*|reg_qr_package|NN REGEXP * const rx +: FIXME - why the E? Ep |void |regprop |NULLOK const regexp *prog|NN SV* sv|NN const regnode* o Ap |void |repeatcpy |NN char* to|NN const char* from|I32 len|I32 count ApP |char* |rninstr |NN const char* big|NN const char* bigend \ |NN const char* little|NN const char* lend Ap |Sighandler_t|rsignal |int i|Sighandler_t t +: Used in pp_sys.c p |int |rsignal_restore|int i|NULLOK Sigsave_t* t +: Used in pp_sys.c p |int |rsignal_save |int i|Sighandler_t t1|NN Sigsave_t* save Ap |Sighandler_t|rsignal_state|int i -p |void |rxres_free |NN void** rsp -p |void |rxres_restore |NN void **rsp|NN REGEXP *rx +#if defined(PERL_IN_PP_CTL_C) || defined(PERL_DECL_PROT) +s |void |rxres_free |NN void** rsp +s |void |rxres_restore |NN void **rsp|NN REGEXP *rx +#endif +: Used in pp_hot.c p |void |rxres_save |NN void **rsp|NN REGEXP *rx #if !defined(HAS_RENAME) +: Used in pp_sys.c p |I32 |same_dirent |NN const char* a|NN const char* b #endif Apda |char* |savepv |NULLOK const char* pv @@ -767,15 +891,18 @@ Ap |void |save_clearsv |NN SV** svp Ap |void |save_delete |NN HV *hv|NN char *key|I32 klen Ap |void |save_destructor|DESTRUCTORFUNC_NOCONTEXT_t f|NN void* p Ap |void |save_destructor_x|DESTRUCTORFUNC_t f|NULLOK void* p -Ap |void |save_freesv |NULLOK SV* sv -p |void |save_freeop |NULLOK OP* o -Ap |void |save_freepv |NULLOK char* pv +Apmb |void |save_freesv |NULLOK SV* sv +: Used in SAVEFREOP(), used in op.c, pp_ctl.c +pmb |void |save_freeop |NULLOK OP* o +Apmb |void |save_freepv |NULLOK char* pv Ap |void |save_generic_svref|NN SV** sptr Ap |void |save_generic_pvref|NN char** str Ap |void |save_shared_pvref|NN char** str Ap |void |save_gp |NN GV* gv|I32 empty Ap |HV* |save_hash |NN GV* gv -Ap |void |save_helem |NN HV *hv|NN SV *key|NN SV **sptr +p |void |save_hints +Amp |void |save_helem |NN HV *hv|NN SV *key|NN SV **sptr +Ap |void |save_helem_flags|NN HV *hv|NN SV *key|NN SV **sptr|const U32 flags Ap |void |save_hptr |NN HV** hptr Ap |void |save_I16 |NN I16* intp Ap |void |save_I32 |NN I32* intp @@ -785,9 +912,10 @@ Ap |void |save_item |NN SV* item Ap |void |save_iv |NN IV *ivp Ap |void |save_list |NN SV** sarg|I32 maxsarg Ap |void |save_long |NN long* longp -Ap |void |save_mortalizesv|NN SV* sv +Apmb |void |save_mortalizesv|NN SV* sv Ap |void |save_nogv |NN GV* gv -p |void |save_op +: Used in SAVEFREOP(), used in gv.c, op.c, perl.c, pp_ctl.c, pp_sort.c +pmb |void |save_op Ap |SV* |save_scalar |NN GV* gv Ap |void |save_pptr |NN char** pptr Ap |void |save_vptr |NN void *ptr @@ -795,24 +923,38 @@ Ap |void |save_re_context Ap |void |save_padsv_and_mortalize|PADOFFSET off Ap |void |save_sptr |NN SV** sptr Ap |SV* |save_svref |NN SV** sptr +Ap |void |save_pushptr |NULLOK void *const ptr|const int type +: Used by SAVECOPARYBASE() in op.c +p |void |save_pushi32ptr|const I32 i|NULLOK void *const ptr|const int type +: Used by SAVESWITCHSTACK() in pp.c +p |void |save_pushptrptr|NULLOK void *const ptr1 \ + |NULLOK void *const ptr2|const int type +#if defined(PERL_IN_SCOPE_C) || defined(PERL_DECL_PROT) +s |void |save_pushptri32ptr|NULLOK void *const ptr1|const I32 i \ + |NULLOK void *const ptr2|const int type +#endif +: Used in perly.y p |OP* |sawparens |NULLOK OP* o +: Used in perly.y p |OP* |scalar |NULLOK OP* o -p |OP* |scalarkids |NULLOK OP* o -p |OP* |scalarseq |NULLOK OP* o +#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT) +s |OP* |scalarkids |NULLOK OP* o +s |OP* |scalarseq |NULLOK OP* o +#endif +: Used in pp_ctl.c p |OP* |scalarvoid |NN OP* o Apd |NV |scan_bin |NN const char* start|STRLEN len|NN STRLEN* retlen Apd |NV |scan_hex |NN const char* start|STRLEN len|NN STRLEN* retlen Ap |char* |scan_num |NN const char* s|NN YYSTYPE *lvalp Apd |NV |scan_oct |NN const char* start|STRLEN len|NN STRLEN* retlen +: Used in perly.y p |OP* |scope |NULLOK OP* o Ap |char* |screaminstr |NN SV *bigstr|NN SV *littlestr|I32 start_shift \ |I32 end_shift|NN I32 *old_posp|I32 last -#if !defined(VMS) -p |I32 |setenv_getix |NN const char* nam -#endif -EXp |void |setdefout |NULLOK GV* gv +Apd |void |setdefout |NULLOK GV* gv Ap |HEK* |share_hek |NN const char* str|I32 len|U32 hash #if defined(HAS_SIGACTION) && defined(SA_SIGINFO) +: Used in perl.c np |Signal_t |sighandler |int sig|NULLOK siginfo_t *info|NULLOK void *uap Anp |Signal_t |csighandler |int sig|NULLOK siginfo_t *info|NULLOK void *uap #else @@ -821,22 +963,25 @@ Anp |Signal_t |csighandler |int sig #endif Ap |SV** |stack_grow |NN SV** sp|NN SV** p|int n Ap |I32 |start_subparse |I32 is_format|U32 flags +: Used in pp_ctl.c p |void |sub_crush_depth|NN CV* cv -Apd |bool |sv_2bool |NN SV* sv -Apd |CV* |sv_2cv |NULLOK SV* sv|NN HV** st|NN GV** gvp|I32 lref -Apd |IO* |sv_2io |NN SV* sv -#ifdef PERL_IN_SV_C +Apd |bool |sv_2bool |NN SV *const sv +Apd |CV* |sv_2cv |NULLOK SV* sv|NN HV **const st|NN GV **const gvp \ + |const I32 lref +Apd |IO* |sv_2io |NN SV *const sv +#if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT) s |bool |glob_2number |NN GV* const gv s |char* |glob_2pv |NN GV* const gv|NULLOK STRLEN * const len #endif Amb |IV |sv_2iv |NULLOK SV *sv Apd |IV |sv_2iv_flags |NULLOK SV *const sv|const I32 flags -Apd |SV* |sv_2mortal |NULLOK SV* sv +Apd |SV* |sv_2mortal |NULLOK SV *const sv Apd |NV |sv_2nv |NULLOK SV *const sv +: Used in pp.c, pp_hot.c, sv.c pMd |SV* |sv_2num |NN SV *const sv Amb |char* |sv_2pv |NULLOK SV *sv|NULLOK STRLEN *lp Apd |char* |sv_2pv_flags |NULLOK SV *const sv|NULLOK STRLEN *const lp|const I32 flags -Apd |char* |sv_2pvutf8 |NN SV* sv|NULLOK STRLEN* lp +Apd |char* |sv_2pvutf8 |NN SV *const sv|NULLOK STRLEN *const lp Apd |char* |sv_2pvbyte |NN SV *const sv|NULLOK STRLEN *const lp Ap |char* |sv_pvn_nomg |NN SV* sv|NULLOK STRLEN* lp Amb |UV |sv_2uv |NULLOK SV *sv @@ -847,94 +992,109 @@ Apd |NV |sv_nv |NN SV* sv Apd |char* |sv_pvn |NN SV *sv|NN STRLEN *lp Apd |char* |sv_pvutf8n |NN SV *sv|NN STRLEN *lp Apd |char* |sv_pvbyten |NN SV *sv|NN STRLEN *lp -Apd |I32 |sv_true |NULLOK SV *sv -pd |void |sv_add_arena |NN char *const ptr|const U32 size|const U32 flags +Apd |I32 |sv_true |NULLOK SV *const sv +#if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT) +sd |void |sv_add_arena |NN char *const ptr|const U32 size \ + |const U32 flags +#endif Apd |int |sv_backoff |NN SV *const sv -Apd |SV* |sv_bless |NN SV* sv|NN HV* stash -Afpd |void |sv_catpvf |NN SV* sv|NN const char* pat|... -Apd |void |sv_vcatpvf |NN SV* sv|NN const char* pat|NULLOK va_list* args -Apd |void |sv_catpv |NN SV* sv|NULLOK const char* ptr +Apd |SV* |sv_bless |NN SV *const sv|NN HV *const stash +Afpd |void |sv_catpvf |NN SV *const sv|NN const char *const pat|... +Apd |void |sv_vcatpvf |NN SV *const sv|NN const char *const pat \ + |NULLOK va_list *const args +Apd |void |sv_catpv |NN SV *const sv|NULLOK const char* ptr Amdb |void |sv_catpvn |NN SV *dsv|NN const char *sstr|STRLEN len Amdb |void |sv_catsv |NN SV *dstr|NULLOK SV *sstr -Apd |void |sv_chop |NN SV* sv|NULLOK const char* ptr +Apd |void |sv_chop |NN SV *const sv|NULLOK const char *const ptr +: Used only in perl.c pd |I32 |sv_clean_all +: Used only in perl.c pd |void |sv_clean_objs -Apd |void |sv_clear |NN SV* sv -Apd |I32 |sv_cmp |NULLOK SV* sv1|NULLOK SV* sv2 -Apd |I32 |sv_cmp_locale |NULLOK SV* sv1|NULLOK SV* sv2 +Apd |void |sv_clear |NN SV *const sv +Apd |I32 |sv_cmp |NULLOK SV *const sv1|NULLOK SV *const sv2 +Apd |I32 |sv_cmp_locale |NULLOK SV *const sv1|NULLOK SV *const sv2 #if defined(USE_LOCALE_COLLATE) -Apd |char* |sv_collxfrm |NN SV* sv|NN STRLEN* nxp +Apd |char* |sv_collxfrm |NN SV *const sv|NN STRLEN *const nxp #endif Ap |OP* |sv_compile_2op |NN SV *sv|NN OP **startop \ |NN const char *code|NN PAD **padp Apd |int |getcwd_sv |NN SV* sv -Apd |void |sv_dec |NULLOK SV* sv +Apd |void |sv_dec |NULLOK SV *const sv Ap |void |sv_dump |NN SV* sv ApdR |bool |sv_derived_from|NN SV* sv|NN const char *const name ApdR |bool |sv_does |NN SV* sv|NN const char *const name Apd |I32 |sv_eq |NULLOK SV* sv1|NULLOK SV* sv2 -Apd |void |sv_free |NULLOK SV* sv -poMX |void |sv_free2 |NN SV* sv +Apd |void |sv_free |NULLOK SV *const sv +: FIXME Used in SvREFCNT_dec() but only +: if defined(__GNUC__) && !defined(PERL_GCC_BRACE_GROUPS_FORBIDDEN) +poMX |void |sv_free2 |NN SV *const sv +: Used only in perl.c pd |void |sv_free_arenas -Apd |char* |sv_gets |NN SV* sv|NN PerlIO* fp|I32 append +Apd |char* |sv_gets |NN SV *const sv|NN PerlIO *const fp|I32 append Apd |char* |sv_grow |NN SV *const sv|STRLEN newlen -Apd |void |sv_inc |NULLOK SV* sv -Apd |void |sv_insert |NN SV *bigstr|STRLEN offset|STRLEN len \ - |NN const char *little|STRLEN littlelen -Apd |int |sv_isa |NULLOK SV* sv|NN const char* name +Apd |void |sv_inc |NULLOK SV *const sv +Amdb |void |sv_insert |NN SV *const bigstr|const STRLEN offset \ + |const STRLEN len|NN const char *const little \ + |const STRLEN littlelen +Apd |void |sv_insert_flags|NN SV *const bigstr|const STRLEN offset|const STRLEN len \ + |NN const char *const little|const STRLEN littlelen|const U32 flags +Apd |int |sv_isa |NULLOK SV* sv|NN const char *const name Apd |int |sv_isobject |NULLOK SV* sv -Apd |STRLEN |sv_len |NULLOK SV* sv -Apd |STRLEN |sv_len_utf8 |NULLOK SV* sv -Apd |void |sv_magic |NN SV* sv|NULLOK SV* obj|int how|NULLOK const char* name \ - |I32 namlen -Apd |MAGIC *|sv_magicext |NN SV* sv|NULLOK SV* obj|int how|NULLOK const MGVTBL *vtbl \ - |NULLOK const char* name|I32 namlen -ApdaR |SV* |sv_mortalcopy |NULLOK SV* oldsv +Apd |STRLEN |sv_len |NULLOK SV *const sv +Apd |STRLEN |sv_len_utf8 |NULLOK SV *const sv +Apd |void |sv_magic |NN SV *const sv|NULLOK SV *const obj|const int how \ + |NULLOK const char *const name|const I32 namlen +Apd |MAGIC *|sv_magicext |NN SV *const sv|NULLOK SV *const obj|const int how \ + |NULLOK const MGVTBL *const vtbl|NULLOK const char *const name \ + |const I32 namlen +ApdaR |SV* |sv_mortalcopy |NULLOK SV *const oldsv ApdR |SV* |sv_newmortal -Apd |SV* |sv_newref |NULLOK SV* sv +Apd |SV* |sv_newref |NULLOK SV *const sv Ap |char* |sv_peek |NULLOK SV* sv -Apd |void |sv_pos_u2b |NULLOK SV* sv|NN I32* offsetp|NULLOK I32* lenp -Apd |void |sv_pos_b2u |NULLOK SV* sv|NN I32* offsetp +Apd |void |sv_pos_u2b |NULLOK SV *const sv|NN I32 *const offsetp|NULLOK I32 *const lenp +Apd |void |sv_pos_b2u |NULLOK SV *const sv|NN I32 *const offsetp Amdb |char* |sv_pvn_force |NN SV* sv|NULLOK STRLEN* lp -Apd |char* |sv_pvutf8n_force|NN SV* sv|NULLOK STRLEN* lp -Apd |char* |sv_pvbyten_force|NN SV* sv|NULLOK STRLEN* lp +Apd |char* |sv_pvutf8n_force|NN SV *const sv|NULLOK STRLEN *const lp +Apd |char* |sv_pvbyten_force|NN SV *const sv|NULLOK STRLEN *const lp Apd |char* |sv_recode_to_utf8 |NN SV* sv|NN SV *encoding Apd |bool |sv_cat_decode |NN SV* dsv|NN SV *encoding|NN SV *ssv|NN int *offset \ |NN char* tstr|int tlen -ApdR |const char* |sv_reftype |NN const SV* sv|int ob -Apd |void |sv_replace |NN SV* sv|NN SV* nsv +ApdR |const char* |sv_reftype |NN const SV *const sv|const int ob +Apd |void |sv_replace |NN SV *const sv|NN SV *const nsv Apd |void |sv_report_used -Apd |void |sv_reset |NN const char* s|NULLOK HV* stash -Afpd |void |sv_setpvf |NN SV* sv|NN const char* pat|... -Apd |void |sv_vsetpvf |NN SV* sv|NN const char* pat|NULLOK va_list* args +Apd |void |sv_reset |NN const char* s|NULLOK HV *const stash +Afpd |void |sv_setpvf |NN SV *const sv|NN const char *const pat|... +Apd |void |sv_vsetpvf |NN SV *const sv|NN const char *const pat|NULLOK va_list *const args Apd |void |sv_setiv |NN SV *const sv|const IV num -Apdb |void |sv_setpviv |NN SV* sv|IV num +Apdb |void |sv_setpviv |NN SV *const sv|const IV num Apd |void |sv_setuv |NN SV *const sv|const UV num Apd |void |sv_setnv |NN SV *const sv|const NV num -Apd |SV* |sv_setref_iv |NN SV* rv|NULLOK const char* classname|IV iv -Apd |SV* |sv_setref_uv |NN SV* rv|NULLOK const char* classname|UV uv -Apd |SV* |sv_setref_nv |NN SV* rv|NULLOK const char* classname|NV nv -Apd |SV* |sv_setref_pv |NN SV* rv|NULLOK const char* classname|NULLOK void* pv -Apd |SV* |sv_setref_pvn |NN SV* rv|NULLOK const char* classname|NN const char* pv|STRLEN n -Apd |void |sv_setpv |NN SV* sv|NULLOK const char* ptr -Apd |void |sv_setpvn |NN SV* sv|NULLOK const char* ptr|STRLEN len +Apd |SV* |sv_setref_iv |NN SV *const rv|NULLOK const char *const classname|const IV iv +Apd |SV* |sv_setref_uv |NN SV *const rv|NULLOK const char *const classname|const UV uv +Apd |SV* |sv_setref_nv |NN SV *const rv|NULLOK const char *const classname|const NV nv +Apd |SV* |sv_setref_pv |NN SV *const rv|NULLOK const char *const classname \ + |NULLOK void *const pv +Apd |SV* |sv_setref_pvn |NN SV *const rv|NULLOK const char *const classname \ + |NN const char *const pv|const STRLEN n +Apd |void |sv_setpv |NN SV *const sv|NULLOK const char *const ptr +Apd |void |sv_setpvn |NN SV *const sv|NULLOK const char *const ptr|const STRLEN len Amdb |void |sv_setsv |NN SV *dstr|NULLOK SV *sstr Amdb |void |sv_taint |NN SV* sv -ApdR |bool |sv_tainted |NN SV* sv -Apd |int |sv_unmagic |NN SV* sv|int type +ApdR |bool |sv_tainted |NN SV *const sv +Apd |int |sv_unmagic |NN SV *const sv|const int type Apdmb |void |sv_unref |NN SV* sv -Apd |void |sv_unref_flags |NN SV *ref|U32 flags -Apd |void |sv_untaint |NN SV* sv +Apd |void |sv_unref_flags |NN SV *const ref|const U32 flags +Apd |void |sv_untaint |NN SV *const sv Apd |void |sv_upgrade |NN SV *const sv|svtype new_type Apdmb |void |sv_usepvn |NN SV* sv|NULLOK char* ptr|STRLEN len -Apd |void |sv_usepvn_flags|NN SV* sv|NULLOK char* ptr|STRLEN len\ - |U32 flags -Apd |void |sv_vcatpvfn |NN SV* sv|NN const char* pat|STRLEN patlen \ - |NULLOK va_list* args|NULLOK SV** svargs|I32 svmax \ - |NULLOK bool *maybe_tainted -Apd |void |sv_vsetpvfn |NN SV* sv|NN const char* pat|STRLEN patlen \ - |NULLOK va_list* args|NULLOK SV** svargs|I32 svmax \ - |NULLOK bool *maybe_tainted +Apd |void |sv_usepvn_flags|NN SV *const sv|NULLOK char* ptr|const STRLEN len\ + |const U32 flags +Apd |void |sv_vcatpvfn |NN SV *const sv|NN const char *const pat|const STRLEN patlen \ + |NULLOK va_list *const args|NULLOK SV **const svargs|const I32 svmax \ + |NULLOK bool *const maybe_tainted +Apd |void |sv_vsetpvfn |NN SV *const sv|NN const char *const pat|const STRLEN patlen \ + |NULLOK va_list *const args|NULLOK SV **const svargs \ + |const I32 svmax|NULLOK bool *const maybe_tainted ApR |NV |str_to_version |NN SV *sv Ap |SV* |swash_init |NN const char* pkg|NN const char* name|NN SV* listsv|I32 minbits|I32 none Ap |UV |swash_fetch |NN SV *swash|NN const U8 *ptr|bool do_utf8 @@ -955,7 +1115,9 @@ Apd |I32 |unpack_str |NN const char *pat|NN const char *patend|NN const char *s Apd |I32 |unpackstring |NN const char *pat|NN const char *patend|NN const char *s \ |NN const char *strend|U32 flags Ap |void |unsharepvn |NULLOK const char* sv|I32 len|U32 hash +: Used in gv.c, hv.c p |void |unshare_hek |NULLOK HEK* hek +: Used in perly.y #ifdef PERL_MAD p |OP * |utilize |int aver|I32 floor|NULLOK OP* version \ |NN OP* idop|NULLOK OP* arg @@ -992,28 +1154,43 @@ Ap |U8* |uvchr_to_utf8_flags |NN U8 *d|UV uv|UV flags Apd |U8* |uvuni_to_utf8_flags |NN U8 *d|UV uv|UV flags Apd |char* |pv_uni_display |NN SV *dsv|NN const U8 *spv|STRLEN len|STRLEN pvlim|UV flags ApdR |char* |sv_uni_display |NN SV *dsv|NN SV *ssv|STRLEN pvlim|UV flags +: Used by Data::Alias EXp |void |vivify_defelem |NN SV* sv +: Used in pp.c p |void |vivify_ref |NN SV* sv|U32 to_what +: Used in pp_sys.c p |I32 |wait4pid |Pid_t pid|NN int* statusp|int flags +: Used in locale.c and perl.c p |U32 |parse_unicode_opts|NN const char **popt Ap |U32 |seed +: Only used in perl.c pR |UV |get_hash_seed +: Used in doio.c, pp_hot.c, pp_sys.c p |void |report_evil_fh |NULLOK const GV *gv|NULLOK const IO *io|I32 op -XEpd |void |report_uninit |NULLOK SV* uninit_sv +: Used in mg.c, pp.c, pp_hot.c, regcomp.c +XEpd |void |report_uninit |NULLOK const SV *uninit_sv Afpd |void |warn |NN const char* pat|... Ap |void |vwarn |NN const char* pat|NULLOK va_list* args Afp |void |warner |U32 err|NN const char* pat|... Ap |void |vwarner |U32 err|NN const char* pat|NULLOK va_list* args +: FIXME p |void |watch |NN char** addr Ap |I32 |whichsig |NN const char* sig +: Used in pp_ctl.c p |void |write_to_stderr|NN const char* message|int msglen +: Used in op.c p |int |yyerror |NN const char *const s +: Used in perly.y, and by Data::Alias EXp |int |yylex +: Used in perl.c, pp_ctl.c p |int |yyparse +: Only used in scope.c p |void |parser_free |NN const yy_parser *parser -p |int |yywarn |NN const char *const s +#if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT) +s |int |yywarn |NN const char *const s +#endif #if defined(MYMALLOC) -Ap |void |dump_mstats |NN char* s +Ap |void |dump_mstats |NN const char* s Ap |int |get_mstats |NN perl_mstats_t *buf|int buflen|int level #endif Anpa |Malloc_t|safesysmalloc |MEM_SIZE nbytes @@ -1027,20 +1204,22 @@ Ap |void |free_global_struct|NN struct perl_vars *plvarsp #endif Ap |int |runops_standard Ap |int |runops_debug -Afpd |void |sv_catpvf_mg |NN SV *sv|NN const char* pat|... -Apd |void |sv_vcatpvf_mg |NN SV* sv|NN const char* pat|NULLOK va_list* args -Apd |void |sv_catpv_mg |NN SV *sv|NULLOK const char *ptr +Afpd |void |sv_catpvf_mg |NN SV *const sv|NN const char *const pat|... +Apd |void |sv_vcatpvf_mg |NN SV *const sv|NN const char *const pat \ + |NULLOK va_list *const args +Apd |void |sv_catpv_mg |NN SV *const sv|NULLOK const char *const ptr Apdbm |void |sv_catpvn_mg |NN SV *sv|NN const char *ptr|STRLEN len Apdbm |void |sv_catsv_mg |NN SV *dsv|NULLOK SV *ssv -Afpd |void |sv_setpvf_mg |NN SV *sv|NN const char* pat|... -Apd |void |sv_vsetpvf_mg |NN SV* sv|NN const char* pat|NULLOK va_list* args +Afpd |void |sv_setpvf_mg |NN SV *const sv|NN const char *const pat|... +Apd |void |sv_vsetpvf_mg |NN SV *const sv|NN const char *const pat \ + |NULLOK va_list *const args Apd |void |sv_setiv_mg |NN SV *const sv|const IV i -Apdb |void |sv_setpviv_mg |NN SV *sv|IV iv +Apdb |void |sv_setpviv_mg |NN SV *const sv|const IV iv Apd |void |sv_setuv_mg |NN SV *const sv|const UV u Apd |void |sv_setnv_mg |NN SV *const sv|const NV num -Apd |void |sv_setpv_mg |NN SV *sv|NULLOK const char *ptr -Apd |void |sv_setpvn_mg |NN SV *sv|NN const char *ptr|STRLEN len -Apd |void |sv_setsv_mg |NN SV *dstr|NULLOK SV *sstr +Apd |void |sv_setpv_mg |NN SV *const sv|NULLOK const char *const ptr +Apd |void |sv_setpvn_mg |NN SV *const sv|NN const char *const ptr|const STRLEN len +Apd |void |sv_setsv_mg |NN SV *const dstr|NULLOK SV *const sstr Apdbm |void |sv_usepvn_mg |NN SV *sv|NULLOK char *ptr|STRLEN len ApR |MGVTBL*|get_vtbl |int vtbl_id Apd |char* |pv_display |NN SV *dsv|NN const char *pv|STRLEN cur|STRLEN len \ @@ -1078,13 +1257,15 @@ AmdbR |char* |sv_pv |NN SV *sv AmdbR |char* |sv_pvutf8 |NN SV *sv AmdbR |char* |sv_pvbyte |NN SV *sv Amdb |STRLEN |sv_utf8_upgrade|NN SV *sv -ApdM |bool |sv_utf8_downgrade|NN SV *sv|bool fail_ok -Apd |void |sv_utf8_encode |NN SV *sv -ApdM |bool |sv_utf8_decode |NN SV *sv +Amd |STRLEN |sv_utf8_upgrade_nomg|NN SV *sv +ApdM |bool |sv_utf8_downgrade|NN SV *const sv|const bool fail_ok +Apd |void |sv_utf8_encode |NN SV *const sv +ApdM |bool |sv_utf8_decode |NN SV *const sv Apdmb |void |sv_force_normal|NN SV *sv -Apd |void |sv_force_normal_flags|NN SV *sv|U32 flags +Apd |void |sv_force_normal_flags|NN SV *const sv|const U32 flags Ap |void |tmps_grow |I32 n -Apd |SV* |sv_rvweaken |NN SV *sv +Apd |SV* |sv_rvweaken |NN SV *const sv +: This is indirectly referenced by globals.c. This is somewhat annoying. p |int |magic_killbackrefs|NN SV *sv|NN MAGIC *mg Ap |OP* |newANONATTRSUB |I32 floor|NULLOK OP *proto|NULLOK OP *attrs|NULLOK OP *block Ap |CV* |newATTRSUB |I32 floor|NULLOK OP *o|NULLOK OP *proto|NULLOK OP *attrs|NULLOK OP *block @@ -1094,7 +1275,9 @@ Apr |OP * |newMYSUB |I32 floor|NULLOK OP *o|NULLOK OP *proto \ #else Apr |void |newMYSUB |I32 floor|NULLOK OP *o|NULLOK OP *proto|NULLOK OP *attrs|NULLOK OP *block #endif +: Used in perly.y p |OP * |my_attrs |NN OP *o|NULLOK OP *attrs +: Only used in perl.c p |void |boot_core_xsutils #if defined(USE_ITHREADS) ApR |PERL_CONTEXT*|cx_dup |NULLOK PERL_CONTEXT* cx|I32 ix|I32 max|NN CLONE_PARAMS* param @@ -1105,20 +1288,21 @@ ApR |HE* |he_dup |NULLOK const HE* e|bool shared|NN CLONE_PARAMS* param ApR |HEK* |hek_dup |NULLOK HEK* e|NN CLONE_PARAMS* param Ap |void |re_dup_guts |NN const REGEXP *sstr|NN REGEXP *dstr \ |NN CLONE_PARAMS* param -Ap |PerlIO*|fp_dup |NULLOK PerlIO* fp|char type|NN CLONE_PARAMS* param -ApR |DIR* |dirp_dup |NULLOK DIR* dp -ApR |GP* |gp_dup |NULLOK GP* gp|NN CLONE_PARAMS* param -ApR |MAGIC* |mg_dup |NULLOK MAGIC* mg|NN CLONE_PARAMS* param -ApR |SV* |sv_dup |NULLOK const SV* sstr|NN CLONE_PARAMS* param -Ap |void |rvpv_dup |NN SV* dstr|NN const SV *sstr|NN CLONE_PARAMS* param -Ap |yy_parser*|parser_dup |NULLOK const yy_parser *proto|NN CLONE_PARAMS* param +Ap |PerlIO*|fp_dup |NULLOK PerlIO *const fp|const char type|NN CLONE_PARAMS *const param +ApR |DIR* |dirp_dup |NULLOK DIR *const dp +ApR |GP* |gp_dup |NULLOK GP *const gp|NN CLONE_PARAMS *const param +ApR |MAGIC* |mg_dup |NULLOK MAGIC *mg|NN CLONE_PARAMS *const param +ApR |SV* |sv_dup |NULLOK const SV *const sstr|NN CLONE_PARAMS *const param +Ap |void |rvpv_dup |NN SV *const dstr|NN const SV *const sstr|NN CLONE_PARAMS *const param +Ap |yy_parser*|parser_dup |NULLOK const yy_parser *const proto|NN CLONE_PARAMS *const param #endif Apa |PTR_TBL_t*|ptr_table_new -ApR |void* |ptr_table_fetch|NN PTR_TBL_t *tbl|NULLOK const void *sv -Ap |void |ptr_table_store|NN PTR_TBL_t *tbl|NULLOK const void *oldsv|NN void *newsv -Ap |void |ptr_table_split|NN PTR_TBL_t *tbl -Ap |void |ptr_table_clear|NULLOK PTR_TBL_t *tbl -Ap |void |ptr_table_free|NULLOK PTR_TBL_t *tbl +ApR |void* |ptr_table_fetch|NN PTR_TBL_t *const tbl|NULLOK const void *const sv +Ap |void |ptr_table_store|NN PTR_TBL_t *const tbl|NULLOK const void *const oldsv \ + |NN void *const newsv +Ap |void |ptr_table_split|NN PTR_TBL_t *const tbl +Ap |void |ptr_table_clear|NULLOK PTR_TBL_t *const tbl +Ap |void |ptr_table_free|NULLOK PTR_TBL_t *const tbl #if defined(USE_ITHREADS) # if defined(HAVE_INTERP_INTERN) Ap |void |sys_intern_dup |NN struct interp_intern* src|NN struct interp_intern* dst @@ -1161,6 +1345,7 @@ s |HV* |require_tie_mod|NN GV *gv|NN const char *varpv|NN SV* namesv \ #endif : #if defined(PERL_IN_HV_C) || defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT) +: Used in hv.c paRxo |void* |get_arena |const size_t svtype|const U32 misc : #endif @@ -1192,6 +1377,7 @@ s |void |unwind_handler_stack|NN const void *p #endif #if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT) +: These are all indirectly referenced by globals.c. This is somewhat annoying. pR |OP* |ck_anoncode |NN OP *o pR |OP* |ck_bitop |NN OP *o pR |OP* |ck_concat |NN OP *o @@ -1245,6 +1431,7 @@ s |void |cop_free |NN COP *cop s |OP* |modkids |NULLOK OP *o|I32 type s |OP* |scalarboolean |NN OP *o sR |OP* |newDEFSVOP +sR |OP* |search_const |NN OP *o sR |OP* |new_logop |I32 type|I32 flags|NN OP **firstp|NN OP **otherp s |void |simplify_sort |NN OP *o s |const char* |gv_ename |NN GV *gv @@ -1270,8 +1457,11 @@ s |void |process_special_blocks |NN const char *const fullname\ Apa |void* |Slab_Alloc |size_t sz Ap |void |Slab_Free |NN void *op # if defined(PERL_DEBUG_READONLY_OPS) +: Used in perl.c poxM |void |pending_Slabs_to_ro +: Used in OpREFCNT_inc() in sv.c poxM |OP * |op_refcnt_inc |NULLOK OP *o +: FIXME - can be static. poxM |PADOFFSET |op_refcnt_dec |NN OP *o # if defined(PERL_IN_OP_C) s |void |Slab_to_rw |NN void *op @@ -1282,7 +1472,7 @@ s |void |Slab_to_rw |NN void *op #if defined(PERL_IN_PERL_C) || defined(PERL_DECL_PROT) s |void |find_beginning |NN SV* linestr_sv|NN PerlIO *rsfp s |void |forbid_setid |const char flag|const bool suidscript -s |void |incpush |NULLOK const char *dir|bool addsubdirs|bool addoldvers|bool usesep|bool canrelocate +s |void |incpush |NULLOK const char *dir|bool addsubdirs|bool addoldvers|bool usesep|bool canrelocate|bool unshift s |void |init_interp s |void |init_ids s |void |init_main_stash @@ -1324,6 +1514,7 @@ s |SV * |incpush_if_exists|NN SV *dir sR |SV* |refto |NN SV* sv #endif #if defined(PERL_IN_PP_C) || defined(PERL_IN_PP_HOT_C) || defined(PERL_DECL_PROT) +: Used in pp_hot.c pRxo |GV* |softref2xv |NN SV *const sv|NN const char *const what \ |const svtype type|NN SV ***spp #endif @@ -1377,15 +1568,15 @@ sR |SV* |method_common |NN SV* meth|NULLOK U32* hashp #endif #if defined(PERL_IN_PP_SORT_C) || defined(PERL_DECL_PROT) -s |I32 |sv_ncmp |NN SV *a|NN SV *b -s |I32 |sv_i_ncmp |NN SV *a|NN SV *b -s |I32 |amagic_ncmp |NN SV *a|NN SV *b -s |I32 |amagic_i_ncmp |NN SV *a|NN SV *b -s |I32 |amagic_cmp |NN SV *str1|NN SV *str2 -s |I32 |amagic_cmp_locale|NN SV *str1|NN SV *str2 -s |I32 |sortcv |NN SV *a|NN SV *b -s |I32 |sortcv_xsub |NN SV *a|NN SV *b -s |I32 |sortcv_stacked |NN SV *a|NN SV *b +s |I32 |sv_ncmp |NN SV *const a|NN SV *const b +s |I32 |sv_i_ncmp |NN SV *const a|NN SV *const b +s |I32 |amagic_ncmp |NN SV *const a|NN SV *const b +s |I32 |amagic_i_ncmp |NN SV *const a|NN SV *const b +s |I32 |amagic_cmp |NN SV *const str1|NN SV *const str2 +s |I32 |amagic_cmp_locale|NN SV *const str1|NN SV *const str2 +s |I32 |sortcv |NN SV *const a|NN SV *const b +s |I32 |sortcv_xsub |NN SV *const a|NN SV *const b +s |I32 |sortcv_stacked |NN SV *const a|NN SV *const b s |void |qsortsvu |NULLOK SV** array|size_t num_elts|NN SVCOMPARE_t compare #endif @@ -1523,25 +1714,28 @@ s |SV* |pm_description |NN const PMOP *pm #endif #if defined(PERL_IN_SCOPE_C) || defined(PERL_DECL_PROT) -s |SV* |save_scalar_at |NN SV **sptr +s |SV* |save_scalar_at |NN SV **sptr|const U32 flags #endif #if defined(PERL_IN_GV_C) || defined(PERL_IN_SV_C) || defined(PERL_IN_PAD_C) || defined(PERL_DECL_PROT) -po |void |sv_add_backref |NN SV *tsv|NN SV *sv +: Used in gv.c +po |void |sv_add_backref |NN SV *const tsv|NN SV *const sv #endif #if defined(PERL_IN_HV_C) || defined(PERL_IN_MG_C) || defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT) -poM |int |sv_kill_backrefs |NN SV *sv|NN AV *av +: Used in hv.c and mg.c +poM |int |sv_kill_backrefs |NN SV *const sv|NN AV *const av #endif #if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT) nsR |char * |uiv_2buf |NN char *const buf|const IV iv|UV uv|const int is_uv|NN char **const peob -s |void |sv_unglob |NN SV* sv +s |void |sv_unglob |NN SV *const sv s |void |not_a_number |NN SV *const sv s |I32 |visit |NN SVFUNC_t f|const U32 flags|const U32 mask -s |void |sv_del_backref |NN SV *tsv|NN SV *sv -sR |SV * |varname |NULLOK GV *gv|const char gvtype|PADOFFSET targ \ - |NULLOK SV *keyname|I32 aindex|int subscript_type +s |void |sv_del_backref |NN SV *const tsv|NN SV *const sv +sR |SV * |varname |NULLOK const GV *const gv|const char gvtype \ + |PADOFFSET targ|NULLOK const SV *const keyname \ + |I32 aindex|int subscript_type # ifdef DEBUGGING s |void |del_sv |NN SV *p # endif @@ -1552,29 +1746,30 @@ s |int |sv_2iuv_non_preserve |NN SV *const sv|I32 numtype s |int |sv_2iuv_non_preserve |NN SV *const sv # endif # endif -sR |I32 |expect_number |NN char** pattern +sR |I32 |expect_number |NN char **const pattern # sn |STRLEN |sv_pos_u2b_forwards|NN const U8 *const start \ |NN const U8 *const send|STRLEN uoffset sn |STRLEN |sv_pos_u2b_midway|NN const U8 *const start \ - |NN const U8 *send|STRLEN uoffset|STRLEN uend -s |STRLEN |sv_pos_u2b_cached|NN SV *sv|NN MAGIC **mgp \ + |NN const U8 *send|const STRLEN uoffset|const STRLEN uend +s |STRLEN |sv_pos_u2b_cached|NN SV *const sv|NN MAGIC **const mgp \ |NN const U8 *const start|NN const U8 *const send \ - |STRLEN uoffset|STRLEN uoffset0|STRLEN boffset0 -s |void |utf8_mg_pos_cache_update|NN SV *sv|NN MAGIC **mgp \ - |STRLEN byte|STRLEN utf8|STRLEN blen -s |STRLEN |sv_pos_b2u_midway|NN const U8 *s|NN const U8 *const target \ + |const STRLEN uoffset|STRLEN uoffset0|STRLEN boffset0 +s |void |utf8_mg_pos_cache_update|NN SV *const sv|NN MAGIC **const mgp \ + |const STRLEN byte|const STRLEN utf8|const STRLEN blen +s |STRLEN |sv_pos_b2u_midway|NN const U8 *const s|NN const U8 *const target \ |NN const U8 *end|STRLEN endu -sn |char * |F0convert |NV nv|NN char *endbuf|NN STRLEN *len +sn |char * |F0convert |NV nv|NN char *const endbuf|NN STRLEN *const len # if defined(PERL_OLD_COPY_ON_WRITE) sM |void |sv_release_COW |NN SV *sv|NN const char *pvx|NN SV *after # endif s |SV * |more_sv s |void * |more_bodies |const svtype sv_type s |bool |sv_2iuv_common |NN SV *const sv -s |void |glob_assign_glob|NN SV *dstr|NN SV *sstr|const int dtype -s |void |glob_assign_ref|NN SV *dstr|NN SV *sstr -sRn |PTR_TBL_ENT_t *|ptr_table_find|NN PTR_TBL_t *tbl|NULLOK const void *sv +s |void |glob_assign_glob|NN SV *const dstr|NN SV *const sstr \ + |const int dtype +s |void |glob_assign_ref|NN SV *const dstr|NN SV *const sstr +sRn |PTR_TBL_ENT_t *|ptr_table_find|NN PTR_TBL_t *const tbl|NULLOK const void *const sv #endif #if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT) @@ -1633,7 +1828,7 @@ s |void |printbuf |NN const char *const fmt|NN const char *const s #endif #if defined(PERL_IN_UNIVERSAL_C) || defined(PERL_DECL_PROT) -s |bool|isa_lookup |NULLOK HV *stash|NN const char * const name|NULLOK const HV * const name_stash +s |bool|isa_lookup |NN HV *stash|NN const char * const name #endif #if defined(PERL_IN_LOCALE_C) || defined(PERL_DECL_PROT) @@ -1650,6 +1845,13 @@ s |const char *|vdie_croak_common|NULLOK const char *pat|NULLOK va_list *args \ s |bool |vdie_common |NULLOK const char *message|STRLEN msglen\ |I32 utf8|bool warn sr |char * |write_no_mem +#if defined(PERL_MEM_LOG) && defined(PERL_MEM_LOG_STDERR) +sn |void |mem_log_common |enum mem_log_type mlt|const UV n|const UV typesize \ + |NN const char *type_name|NULLOK const SV *sv \ + |Malloc_t oldalloc|Malloc_t newalloc \ + |NN const char *filename|const int linenumber \ + |NN const char *funcname +#endif #endif #if defined(PERL_IN_NUMERIC_C) || defined(PERL_DECL_PROT) @@ -1664,17 +1866,18 @@ sR |SV* |swash_get |NN SV* swash|UV start|UV span START_EXTERN_C -Apd |void |sv_setsv_flags |NN SV *dstr|NULLOK SV *sstr|I32 flags -Apd |void |sv_catpvn_flags|NN SV *dstr|NN const char *sstr|STRLEN len \ - |I32 flags -Apd |void |sv_catsv_flags |NN SV* dsv|NULLOK SV* ssv|I32 flags -Apd |STRLEN |sv_utf8_upgrade_flags|NN SV *sv|I32 flags -Apd |char* |sv_pvn_force_flags|NN SV* sv|NULLOK STRLEN* lp|I32 flags +Apd |void |sv_setsv_flags |NN SV *dstr|NULLOK SV *sstr|const I32 flags +Apd |void |sv_catpvn_flags|NN SV *const dstr|NN const char *sstr|const STRLEN len \ + |const I32 flags +Apd |void |sv_catsv_flags |NN SV *const dsv|NULLOK SV *const ssv|const I32 flags +Apd |STRLEN |sv_utf8_upgrade_flags|NN SV *const sv|const I32 flags +Apd |char* |sv_pvn_force_flags|NN SV *const sv|NULLOK STRLEN *const lp|const I32 flags Apd |void |sv_copypv |NN SV *const dsv|NN SV *const ssv Ap |char* |my_atof2 |NN const char *s|NN NV* value Apn |int |my_socketpair |int family|int type|int protocol|int fd[2] Ap |int |my_dirfd |NULLOK DIR* dir #ifdef PERL_OLD_COPY_ON_WRITE +: Used in pp_hot.c and regexec.c pMXE |SV* |sv_setsv_cow |NN SV* dstr|NN SV* sstr #endif @@ -1711,27 +1914,40 @@ ApR |PerlIO *|PerlIO_stdout ApR |PerlIO *|PerlIO_stderr #endif /* PERLIO_LAYERS */ +: Only used in dump.c p |void |deb_stack_all -#ifdef PERL_IN_DEB_C +#if defined(PERL_IN_DEB_C) || defined(PERL_DECL_PROT) s |void |deb_stack_n |NN SV** stack_base|I32 stack_min \ |I32 stack_max|I32 mark_min|I32 mark_max #endif +: Used in perl.c, pp_ctl.c, toke.c pda |PADLIST*|pad_new |int flags +: Only used in op.c pd |void |pad_undef |NN CV* cv +: Only used in op.c pd |PADOFFSET|pad_add_name |NN const char *name\ |NULLOK HV* typestash|NULLOK HV* ourstash|bool clone|bool state +: Only used in op.c pd |PADOFFSET|pad_add_anon |NN SV* sv|OPCODE op_type +: Only used in op.c pd |void |pad_check_dup |NN const char* name|bool is_our|NN const HV* ourstash #ifdef DEBUGGING +: Only used PAD_SETSV() in op.c pd |void |pad_setsv |PADOFFSET po|NN SV* sv #endif +: Only used in op.c pd |void |pad_block_start|int full +: Only used in op.c pd |void |pad_tidy |padtidy_type type +: Used in dump.c pd |void |do_dump_pad |I32 level|NN PerlIO *file|NULLOK PADLIST *padlist|int full +: Only used in op.c pd |void |pad_fixup_inner_anons|NN PADLIST *padlist|NN CV *old_cv|NN CV *new_cv +: Used in pp_ctl.c, pp_hot.c, pp_sort.c pdX |void |pad_push |NN PADLIST *padlist|int depth +: Only used in PAD_COMPNAME_TYPE() in op.c pR |HV* |pad_compname_type|const PADOFFSET po #if defined(PERL_IN_PAD_C) || defined(PERL_DECL_PROT) @@ -1743,8 +1959,10 @@ sd |void |cv_dump |NN const CV *cv|NN const char *title # endif #endif ApdR |CV* |find_runcv |NULLOK U32 *db_seqp +: Only used in perl.c p |void |free_tied_hv_pool #if defined(DEBUGGING) +: Used in mg.c pR |int |get_debug_opts |NN const char **s|bool givehelp #endif Ap |void |save_set_svflags|NN SV *sv|U32 mask|U32 val @@ -1756,21 +1974,27 @@ ApoR |HE** |hv_eiter_p |NN HV *hv Apo |void |hv_riter_set |NN HV *hv|I32 riter Apo |void |hv_eiter_set |NN HV *hv|NULLOK HE *eiter Ap |void |hv_name_set |NN HV *hv|NULLOK const char *name|U32 len|U32 flags +: Used in dump.c and hv.c poM |AV** |hv_backreferences_p |NN HV *hv #if defined(PERL_IN_DUMP_C) || defined(PERL_IN_HV_C) || defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT) +: Only used in sv.c poM |void |hv_kill_backrefs |NN HV *hv #endif Apd |void |hv_clear_placeholders |NN HV *hv ApoR |I32* |hv_placeholders_p |NN HV *hv -ApoR |I32 |hv_placeholders_get |NN HV *hv +ApoR |I32 |hv_placeholders_get |NN const HV *hv Apo |void |hv_placeholders_set |NN HV *hv|I32 ph +: This is indirectly referenced by globals.c. This is somewhat annoying. p |SV* |magic_scalarpack|NN HV *hv|NN MAGIC *mg #if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT) -s |SV * |find_hash_subscript|NULLOK HV *hv|NN SV *val -s |I32 |find_array_subscript|NULLOK AV *av|NN SV *val -sMd |SV* |find_uninit_var|NULLOK OP* obase|NULLOK SV* uninit_sv|bool top +s |SV * |find_hash_subscript|NULLOK const HV *const hv \ + |NN const SV *const val +s |I32 |find_array_subscript|NULLOK const AV *const av \ + |NN const SV *const val +sMd |SV* |find_uninit_var|NULLOK const OP *const obase \ + |NULLOK const SV *const uninit_sv|bool top #endif #ifdef PERL_NEED_MY_HTOLE16 @@ -1847,15 +2071,19 @@ np |long |my_htobel |long n np |long |my_betohl |long n #endif +: I think that these are only used by the above, which are macros, and in turn +: currently they are only used in pp_pack.c, but this is in util.c np |void |my_swabn |NN void* ptr|int n Ap |GV* |gv_fetchpvn_flags|NN const char* name|STRLEN len|I32 flags|const svtype sv_type Ap |GV* |gv_fetchsv|NN SV *name|I32 flags|const svtype sv_type -dpR |bool |is_gv_magical_sv|NN SV *name|U32 flags +: Only used in pp.c +dpR |bool |is_gv_magical_sv|NN SV *const name_sv|U32 flags ApR |bool |stashpv_hvname_match|NN const COP *c|NN const HV *hv #ifdef DEBUG_LEAKING_SCALARS_FORK_DUMP +: Used in sv.c p |void |dump_sv_child |NN SV *sv #endif @@ -1864,9 +2092,11 @@ Ap |GV* |gv_SVadd |NN GV* gv #endif Apo |bool |ckwarn |U32 w Apo |bool |ckwarn_d |U32 w +: FIXME - exported for ByteLoader - public or private? XEopMa |STRLEN *|new_warnings_bitfield|NULLOK STRLEN *buffer \ |NN const char *const bits|STRLEN size +: Used in av.c, hv.c p |void |offer_nice_chunk |NN void *const chunk|const U32 chunk_size #ifndef SPRINTF_RETURNS_STRLEN @@ -1876,6 +2106,7 @@ Apnod |int |my_sprintf |NN char *buffer|NN const char *pat|... Apnodf |int |my_snprintf |NN char *buffer|const Size_t len|NN const char *format|... Apnod |int |my_vsnprintf |NN char *buffer|const Size_t len|NN const char *format|va_list ap +: Used in mg.c, sv.c px |void |my_clearenv #ifdef PERL_IMPLICIT_CONTEXT @@ -1948,25 +2179,37 @@ Mp |int |madparse AMdnoP |int |Perl_signbit |NV f #endif +: Used by B XEMop |void |emulate_cop_io |NN const COP *const c|NN SV *const sv +: Used by SvRX and SvRXOK XEMop |REGEXP *|get_re_arg|NULLOK SV *sv +: Used in HvMROMETA() in gv.c, pp_hot.c, universal.c p |struct mro_meta* |mro_meta_init |NN HV* stash #if defined(USE_ITHREADS) +: Only used in sv.c p |struct mro_meta* |mro_meta_dup |NN struct mro_meta* smeta|NN CLONE_PARAMS* param #endif Apd |AV* |mro_get_linear_isa|NN HV* stash #if defined(PERL_IN_MRO_C) || defined(PERL_DECL_PROT) -sd |AV* |mro_get_linear_isa_c3|NN HV* stash|I32 level -sd |AV* |mro_get_linear_isa_dfs|NN HV* stash|I32 level +sd |AV* |mro_get_linear_isa_c3|NN HV* stash|U32 level +sd |AV* |mro_get_linear_isa_dfs|NN HV* stash|U32 level #endif +: Used in hv.c, mg.c, pp.c, sv.c pd |void |mro_isa_changed_in|NN HV* stash Apd |void |mro_method_changed_in |NN HV* stash +: Only used in perl.c p |void |boot_core_mro Apon |void |sys_init |NN int* argc|NN char*** argv Apon |void |sys_init3 |NN int* argc|NN char*** argv|NN char*** env Apon |void |sys_term - +ApoM |const char *|fetch_cop_label|NULLOK struct refcounted_he *const chain \ + |NULLOK STRLEN *len|NULLOK U32 *flags +: Only used in op.c +xpoM |struct refcounted_he *|store_cop_label \ + |NULLOK struct refcounted_he *const chain|NN const char *label +: Only used in univeral.c +poM |HV * |get_isa_hash |NN HV *const stash END_EXTERN_C /*