: 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
: 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 \
|I32 method
Ap |void |gv_check |HV* stash
Ap |void |gv_efullname |SV* sv|GV* gv
-Ap |void |gv_efullname3 |SV* sv|GV* gv|const char* prefix
+Amb |void |gv_efullname3 |SV* sv|GV* gv|const char* prefix
Ap |void |gv_efullname4 |SV* sv|GV* gv|const char* prefix|bool keepmain
Ap |GV* |gv_fetchfile |const char* name
Apd |GV* |gv_fetchmeth |HV* stash|const char* name|STRLEN len \
|I32 autoload
Ap |GV* |gv_fetchpv |const char* name|I32 add|I32 sv_type
Ap |void |gv_fullname |SV* sv|GV* gv
-Ap |void |gv_fullname3 |SV* sv|GV* gv|const char* prefix
+Amb |void |gv_fullname3 |SV* sv|GV* gv|const char* prefix
Ap |void |gv_fullname4 |SV* sv|GV* gv|const char* prefix|bool keepmain
Ap |void |gv_init |GV* gv|HV* stash|const char* name \
|STRLEN len|int multi
Apd |HV* |gv_stashpv |const char* name|I32 create
-Ap |HV* |gv_stashpvn |const char* name|U32 namelen|I32 create
+Apd |HV* |gv_stashpvn |const char* name|U32 namelen|I32 create
Apd |HV* |gv_stashsv |SV* sv|I32 create
Apd |void |hv_clear |HV* tb
Ap |void |hv_delayfree_ent|HV* hv|HE* entry
Ap |void |leave_scope |I32 base
p |void |lex_end
p |void |lex_start |SV* line
-Ap |void |op_null |OP* o
+Ap |void |op_null |OP* o
p |void |op_clear |OP* o
+Ap |void |op_refcnt_lock
+Ap |void |op_refcnt_unlock
p |OP* |linklist |OP* o
p |OP* |list |OP* o
p |OP* |listkids |OP* o
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_magic |SV* sv|SV* obj|int how|const char* name \
|I32 namlen
Apd |MAGIC *|sv_magicext |SV* sv|SV* obj|int how|MGVTBL *vtbl \
- | const char* name|I32 namlen
+ |const char* name|I32 namlen
Apd |SV* |sv_mortalcopy |SV* oldsv
Apd |SV* |sv_newmortal
Apd |SV* |sv_newref |SV* sv
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
Ap |void |do_sv_dump |I32 level|PerlIO *file|SV *sv|I32 nest \
|I32 maxnest|bool dumpops|STRLEN pvlim
Ap |void |magic_dump |MAGIC *mg
-#if defined(PERL_FLEXIBLE_EXCEPTIONS)
-Ap |void* |default_protect|volatile JMPENV *je|int *excpt \
- |protect_body_t body|...
-Ap |void* |vdefault_protect|volatile JMPENV *je|int *excpt \
- |protect_body_t body|va_list *args
-#endif
Ap |void |reginitcolors
Apd |char* |sv_2pv_nolen |SV* sv
Apd |char* |sv_2pvutf8_nolen|SV* sv
#if defined(PERL_IN_PERL_C) || defined(PERL_DECL_PROT)
s |void |find_beginning
s |void |forbid_setid |char *
-s |void |incpush |char *|int|int|int
+s |void |incpush |char *|int|int|int|int
s |void |init_interp
s |void |init_ids
s |void |init_lexer
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* |run_body |I32 oldscope
s |void |call_body |OP *myop|int is_eval
s |void* |call_list_body |CV *cv
-#if defined(PERL_FLEXIBLE_EXCEPTIONS)
-s |void* |vparse_body |va_list args
-s |void* |vrun_body |va_list args
-s |void* |vcall_body |va_list args
-s |void* |vcall_list_body|va_list args
-#endif
#endif
#if defined(PERL_IN_PP_C) || defined(PERL_DECL_PROT)
#if defined(PERL_IN_PP_CTL_C) || defined(PERL_DECL_PROT)
s |OP* |docatch |OP *o
s |void* |docatch_body
-#if defined(PERL_FLEXIBLE_EXCEPTIONS)
-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|U32 hash
-sM |HE* |hv_store_common|HV* tb|SV* key_sv|const char* key|STRLEN klen|int flags|SV* val|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
+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
+
+Ap |GV* |gv_fetchpvn_flags|const char* name|STRLEN len|I32 flags|I32 sv_type
+Ap |GV* |gv_fetchsv|SV *name|I32 flags|I32 sv_type
+dp |bool |is_gv_magical_sv|SV *name|U32 flags
+
+Apd |char* |savesvpv |SV* sv
+
END_EXTERN_C