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
-: This is used in perly.y
+: Used in perly.y
p |OP* |append_elem |I32 optype|NULLOK OP* first|NULLOK OP* last
-: This is used in perly.y
+: 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
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 AV *av
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
#if defined(PERL_IN_AV_C) || defined(PERL_DECL_PROT)
s |MAGIC* |get_aux_mg |NN AV *av
#endif
-: This is used in perly.y
+: Used in perly.y
pR |OP* |bind_match |I32 type|NN OP *left|NN OP *right
-: This is used in perly.y
+: Used in perly.y
pR |OP* |block_end |I32 floor|NULLOK OP* seq
ApR |I32 |block_gimme
-: This is used in perly.y
+: Used in perly.y
pR |int |block_start |int full
-: This is used in perl.c
+: Used in perl.c
p |void |boot_core_UNIVERSAL
-: This is used in perl.c
+: Used in perl.c
p |void |boot_core_PerlIO
Ap |void |call_list |I32 oldscope|NN AV *paramList
-: This is used in serveral source files
+: 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
#if !defined(HAS_TRUNCATE) && !defined(HAS_CHSIZE) && defined(F_FREESP)
ApR |I32 |my_chsize |int fd|Off_t length
#endif
-: This is used in perly.y
+: Used in perly.y
pR |OP* |convert |I32 optype|I32 flags|NULLOK OP* o
-: This is used in op.c and perl.c
+: 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|...
Afnp |int |fprintf_nocontext|NN PerlIO *stream|NN const char *format|...
Afnp |int |printf_nocontext|NN const char *format|...
#endif
-: This is used in sv.c
+: 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
: 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
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|...
-#if defined(PERL_IN_UTIL_C)
+#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 |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 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
-#if defined(PERL_IN_OP_C)
+#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
-#if defined(PERL_IN_OP_C)
+#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
s |OP* |gen_constant_list|NULLOK OP* o
#endif
#if !defined(HAS_GETENV_LEN)
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
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
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
-#if defined(PERL_IN_DOIO_C)
+#if defined(PERL_IN_DOIO_C) || defined(PERL_DECL_PROT)
sR |bool |ingroup |Gid_t testgid|bool effective
#endif
: Used in toke.c
: 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
+: 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
-#if defined(PERL_IN_OP_C)
+#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
s |OP* |linklist |NN OP *o
s |OP* |listkids |NULLOK OP* o
#endif
#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_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
: Used in op.c and pp_sys.c
p |int |mode_from_discipline|NULLOK const char* s|STRLEN len
Apd |SV* |pad_sv |PADOFFSET po
: Defined in pad.c, used only in op.c
pd |void |pad_free |PADOFFSET po
-#if defined(PERL_IN_PAD_C)
+#if defined(PERL_IN_PAD_C) || defined(PERL_DECL_PROT)
sd |void |pad_reset
#endif
: Used in op.c
Ap |void |pmflag |NN U32* pmfl|int ch
: Used in perly.y
p |OP* |pmruntime |NN OP *o|NN OP *expr|bool isreg
-#if defined(PERL_IN_OP_C)
+#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
p |OP* |prepend_elem |I32 optype|NULLOK OP* head|NULLOK OP* tail
Ap |void |push_scope
Amb |OP* |ref |NULLOK OP* o|I32 type
-#if defined(PERL_IN_OP_C)
+#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
|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 |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?
: 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
-#if defined(PERL_IN_PP_CTL_C)
+#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
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
+Apmb |void |save_freesv |NULLOK SV* sv
: Used in SAVEFREOP(), used in op.c, pp_ctl.c
-p |void |save_freeop |NULLOK OP* o
-Ap |void |save_freepv |NULLOK char* pv
+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
+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_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
: Used in SAVEFREOP(), used in gv.c, op.c, perl.c, pp_ctl.c, pp_sort.c
-p |void |save_op
+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
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
-#if defined(PERL_IN_OP_C)
+#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
s |OP* |scalarkids |NULLOK OP* o
s |OP* |scalarseq |NULLOK OP* o
#endif
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) && defined(PERL_IN_UTIL_C)
-s |I32 |setenv_getix |NN const char* nam
-#endif
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)
-: This is used in perl.c
+: 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
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
-#ifdef PERL_IN_SV_C
+#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
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 *const sv
-#if defined (PERL_IN_SV_C)
+#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 |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
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
+: Used in perly.y, and by Data::Alias
EXp |int |yylex
: Used in perl.c, pp_ctl.c
p |int |yyparse
: 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
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
+: 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
#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
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
#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
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