: proto, no #define
: d function has documentation with its source
: s static function, should have an S_ prefix in
-: source file
+: source file; for macros (m), suffix the usage
+: example with a semicolon
: n has no implicit interpreter/thread context argument
: p function has a Perl_ prefix
: f function takes printf style format string, varargs
: x not exported
: X explicitly exported
: M may change
-: E visible to Perl core extensions
+: E visible to extensions included in the Perl core
: b binary backward compatibility; function is a macro
: but has also Perl_ implementation (which is exported)
+: U suppress usage example in autogenerated documentation
:
: Individual flags may be separated by whitespace.
:
|int argc|char** argv|char** env
Anp |bool |doing_taint |int argc|char** argv|char** env
#if defined(USE_ITHREADS)
-Anod |PerlInterpreter*|perl_clone|PerlInterpreter* interp, UV flags
+Anod |PerlInterpreter*|perl_clone|PerlInterpreter* interp|UV flags
# if defined(PERL_IMPLICIT_SYS)
Ano |PerlInterpreter*|perl_clone_using|PerlInterpreter *interp|UV flags \
|struct IPerlMem* m|struct IPerlMem* ms \
Ap |bool |is_uni_xdigit_lc|UV c
Apd |STRLEN |is_utf8_char |U8 *p
Apd |bool |is_utf8_string |U8 *s|STRLEN len
+Apd |bool |is_utf8_string_loc|U8 *s|STRLEN len|U8 **p
Ap |bool |is_utf8_alnum |U8 *p
Ap |bool |is_utf8_alnumc |U8 *p
Ap |bool |is_utf8_idfirst|U8 *p
Ap |PERL_SI*|new_stackinfo|I32 stitems|I32 cxitems
Ap |char* |scan_vstring |char *vstr|SV *sv
-Apd |char* |scan_version |char *vstr|SV *sv
+Apd |char* |scan_version |char *vstr|SV *sv|bool qv
Apd |SV* |new_version |SV *ver
Apd |SV* |upg_version |SV *ver
Apd |SV* |vnumify |SV *vs
+Apd |SV* |vnormal |SV *vs
Apd |SV* |vstringify |SV *vs
Apd |int |vcmp |SV *lvs|SV *rvs
p |PerlIO*|nextargv |GV* gv
pd |PADOFFSET|pad_alloc |I32 optype|U32 tmptype
p |PADOFFSET|allocmy |char* name
pd |PADOFFSET|pad_findmy |char* name
+Ap |PADOFFSET|find_rundefsvoffset |
p |OP* |oopsAV |OP* o
p |OP* |oopsHV |OP* o
pd |void |pad_leavemy
Apd |void |packlist |SV *cat|char *pat|char *patend|SV **beglist|SV **endlist
p |void |pidgone |Pid_t pid|int status
Ap |void |pmflag |U32* pmfl|int ch
-p |OP* |pmruntime |OP* pm|OP* expr|OP* repl
+p |OP* |pmruntime |OP* pm|OP* expr|bool isreg
p |OP* |pmtrans |OP* o|OP* expr|OP* repl
-p |OP* |pop_return
Ap |void |pop_scope
p |OP* |prepend_elem |I32 optype|OP* head|OP* tail
-p |void |push_return |OP* o
Ap |void |push_scope
p |OP* |ref |OP* o|I32 type
p |OP* |refkids |OP* o|I32 type
Apd |bool |sv_2bool |SV* sv
Apd |CV* |sv_2cv |SV* sv|HV** st|GV** gvp|I32 lref
Apd |IO* |sv_2io |SV* sv
-Apd |IV |sv_2iv |SV* sv
+Amb |IV |sv_2iv |SV* sv
+Apd |IV |sv_2iv_flags |SV* sv|I32 flags
Apd |SV* |sv_2mortal |SV* sv
Apd |NV |sv_2nv |SV* sv
Amb |char* |sv_2pv |SV* sv|STRLEN* lp
Apd |char* |sv_2pvutf8 |SV* sv|STRLEN* lp
Apd |char* |sv_2pvbyte |SV* sv|STRLEN* lp
Ap |char* |sv_pvn_nomg |SV* sv|STRLEN* lp
-Apd |UV |sv_2uv |SV* sv
+Amb |UV |sv_2uv |SV* sv
+Apd |UV |sv_2uv_flags |SV* sv|I32 flags
Apd |IV |sv_iv |SV* sv
Apd |UV |sv_uv |SV* sv
Apd |NV |sv_nv |SV* sv
Apd |int |sv_backoff |SV* sv
Apd |SV* |sv_bless |SV* sv|HV* stash
Afpd |void |sv_catpvf |SV* sv|const char* pat|...
-Ap |void |sv_vcatpvf |SV* sv|const char* pat|va_list* args
+Apd |void |sv_vcatpvf |SV* sv|const char* pat|va_list* args
Apd |void |sv_catpv |SV* sv|const char* ptr
Amdb |void |sv_catpvn |SV* sv|const char* ptr|STRLEN len
Amdb |void |sv_catsv |SV* dsv|SV* ssv
Apd |void |sv_report_used
Apd |void |sv_reset |char* s|HV* stash
Afpd |void |sv_setpvf |SV* sv|const char* pat|...
-Ap |void |sv_vsetpvf |SV* sv|const char* pat|va_list* args
+Apd |void |sv_vsetpvf |SV* sv|const char* pat|va_list* args
Apd |void |sv_setiv |SV* sv|IV num
Apdb |void |sv_setpviv |SV* sv|IV num
Apd |void |sv_setuv |SV* sv|UV num
p |U32 |seed
p |UV |get_hash_seed
p |void |report_evil_fh |GV *gv|IO *io|I32 op
-pd |void |report_uninit
+pd |void |report_uninit |SV* uninit_sv
Afpd |void |warn |const char* pat|...
Ap |void |vwarn |const char* pat|va_list* args
Afp |void |warner |U32 err|const char* pat|...
Ap |I32 |whichsig |char* sig
p |void |write_to_stderr|const char* message|int msglen
p |int |yyerror |char* s
-#ifdef USE_PURE_BISON
-p |int |yylex_r |YYSTYPE *lvalp|int *lcharp
-#endif
p |int |yylex
p |int |yyparse
p |int |yywarn |char* s
Ap |int |runops_standard
Ap |int |runops_debug
Afpd |void |sv_catpvf_mg |SV *sv|const char* pat|...
-Ap |void |sv_vcatpvf_mg |SV* sv|const char* pat|va_list* args
+Apd |void |sv_vcatpvf_mg |SV* sv|const char* pat|va_list* args
Apd |void |sv_catpv_mg |SV *sv|const char *ptr
Apd |void |sv_catpvn_mg |SV *sv|const char *ptr|STRLEN len
Apd |void |sv_catsv_mg |SV *dstr|SV *sstr
Afpd |void |sv_setpvf_mg |SV *sv|const char* pat|...
-Ap |void |sv_vsetpvf_mg |SV* sv|const char* pat|va_list* args
+Apd |void |sv_vsetpvf_mg |SV* sv|const char* pat|va_list* args
Apd |void |sv_setiv_mg |SV *sv|IV i
Apdb |void |sv_setpviv_mg |SV *sv|IV iv
Apd |void |sv_setuv_mg |SV *sv|UV u
s |void |hv_magic_check |HV *hv|bool *needs_copy|bool *needs_store
s |void |unshare_hek_or_pvn|HEK* hek|const char* sv|I32 len|U32 hash
s |HEK* |share_hek_flags|const char* sv|I32 len|U32 hash|int flags
-s |SV** |hv_fetch_flags |HV* tb|const char* key|I32 klen|I32 lval \
- |int flags
s |void |hv_notallowed |int flags|const char *key|I32 klen|const char *msg
#endif
s |OP * |dup_attrlist |OP *o
s |void |apply_attrs |HV *stash|SV *target|OP *attrs|bool for_my
s |void |apply_attrs_my |HV *stash|OP *target|OP *attrs|OP **imopsp
-# if defined(PL_OP_SLAB_ALLOC)
-s |void* |Slab_Alloc |int m|size_t sz
-s |void |Slab_Free |void *op
-# endif
+#endif
+#if defined(PL_OP_SLAB_ALLOC)
+Ap |void* |Slab_Alloc |int m|size_t sz
+Ap |void |Slab_Free |void *op
#endif
#if defined(PERL_IN_PERL_C) || defined(PERL_DECL_PROT)
s |void |init_predump_symbols
rs |void |my_exit_jump
s |void |nuke_stacks
-s |void |open_script |char *|bool|SV *|int *fd
+s |void |open_script |char *|bool|SV *
s |void |usage |char *
-s |void |validate_suid |char *|char*|int
+s |void |validate_suid |char *|char*
# if defined(IAMSUID)
s |int |fd_on_nosuid_fs|int fd
# endif
s |void* |vdocatch_body |va_list args
#endif
s |OP* |dofindlabel |OP *o|char *label|OP **opstack|OP **oplimit
-s |void |doparseform |SV *sv
+s |OP* |doparseform |SV *sv
+sn |bool |num_overflow |NV value|I32 fldsize|I32 frcsize
s |I32 |dopoptoeval |I32 startingblock
s |I32 |dopoptolabel |char *label
s |I32 |dopoptoloop |I32 startingblock
s |void |del_xrv |XRV* p
s |void |sv_unglob |SV* sv
s |void |not_a_number |SV *sv
-s |I32 |visit |SVFUNC_t f
+s |I32 |visit |SVFUNC_t f|U32 flags|U32 mask
s |void |sv_add_backref |SV *tsv|SV *sv
s |void |sv_del_backref |SV *sv
# ifdef DEBUGGING
s |SV* |new_constant |char *s|STRLEN len|const char *key|SV *sv \
|SV *pv|const char *type
# if defined(DEBUGGING)
-s |void |tokereport |char *thing|char *s|I32 rv
+s |int |tokereport |char *s|I32 rv
# endif
s |int |ao |int toketype
s |void |depcom
Ap |char* |my_atof2 |const char *s|NV* value
Apn |int |my_socketpair |int family|int type|int protocol|int fd[2]
#ifdef PERL_COPY_ON_WRITE
-pMX |SV* |sv_setsv_cow |SV* dsv|SV* ssv
+pMXE |SV* |sv_setsv_cow |SV* dsv|SV* ssv
#endif
#if defined(USE_PERLIO) && !defined(USE_SFIO)
pd |CV* |find_runcv |U32 *db_seqp
p |void |free_tied_hv_pool
#if defined(DEBUGGING)
-p |int |get_debug_opts |char **s
+p |int |get_debug_opts |char **s|bool givehelp
#endif
Ap |void |save_set_svflags|SV* sv|U32 mask|U32 val
+Apod |void |hv_assert |HV* tb
+#if defined(PERL_IN_HV_C) || defined(PERL_DECL_PROT)
+sM |SV* |hv_delete_common|HV* tb|SV* key_sv|const char* key|STRLEN klen|int k_flags|I32 d_flags|U32 hash
+sM |HE* |hv_fetch_common|HV* tb|SV* key_sv|const char* key|STRLEN klen|int flags|int action|SV* val|U32 hash
+#endif
+Apd |void |hv_clear_placeholders|HV* hb
-END_EXTERN_C
+Apd |SV* |hv_scalar |HV* hv|
+p |SV* |magic_scalarpack|HV* hv|MAGIC* mg
+#ifdef PERL_IN_SV_C
+sMd |SV* |find_uninit_var|OP* obase|SV* uninit_sv|bool top
+#endif
+#ifdef PERL_NEED_MY_HTOLE16
+np |U16 |my_htole16 |U16 n
+#endif
+#ifdef PERL_NEED_MY_LETOH16
+np |U16 |my_letoh16 |U16 n
+#endif
+#ifdef PERL_NEED_MY_HTOBE16
+np |U16 |my_htobe16 |U16 n
+#endif
+#ifdef PERL_NEED_MY_BETOH16
+np |U16 |my_betoh16 |U16 n
+#endif
+#ifdef PERL_NEED_MY_HTOLE32
+np |U32 |my_htole32 |U32 n
+#endif
+#ifdef PERL_NEED_MY_LETOH32
+np |U32 |my_letoh32 |U32 n
+#endif
+#ifdef PERL_NEED_MY_HTOBE32
+np |U32 |my_htobe32 |U32 n
+#endif
+#ifdef PERL_NEED_MY_BETOH32
+np |U32 |my_betoh32 |U32 n
+#endif
+#ifdef PERL_NEED_MY_HTOLE64
+np |U64 |my_htole64 |U64 n
+#endif
+#ifdef PERL_NEED_MY_LETOH64
+np |U64 |my_letoh64 |U64 n
+#endif
+#ifdef PERL_NEED_MY_HTOBE64
+np |U64 |my_htobe64 |U64 n
+#endif
+#ifdef PERL_NEED_MY_BETOH64
+np |U64 |my_betoh64 |U64 n
+#endif
+
+#ifdef PERL_NEED_MY_HTOLES
+np |short |my_htoles |short n
+#endif
+#ifdef PERL_NEED_MY_LETOHS
+np |short |my_letohs |short n
+#endif
+#ifdef PERL_NEED_MY_HTOBES
+np |short |my_htobes |short n
+#endif
+#ifdef PERL_NEED_MY_BETOHS
+np |short |my_betohs |short n
+#endif
+#ifdef PERL_NEED_MY_HTOLEI
+np |int |my_htolei |int n
+#endif
+#ifdef PERL_NEED_MY_LETOHI
+np |int |my_letohi |int n
+#endif
+#ifdef PERL_NEED_MY_HTOBEI
+np |int |my_htobei |int n
+#endif
+#ifdef PERL_NEED_MY_BETOHI
+np |int |my_betohi |int n
+#endif
+#ifdef PERL_NEED_MY_HTOLEL
+np |long |my_htolel |long n
+#endif
+#ifdef PERL_NEED_MY_LETOHL
+np |long |my_letohl |long n
+#endif
+#ifdef PERL_NEED_MY_HTOBEL
+np |long |my_htobel |long n
+#endif
+#ifdef PERL_NEED_MY_BETOHL
+np |long |my_betohl |long n
+#endif
+
+np |void |my_swabn |void* ptr|int n
+
+END_EXTERN_C