Apd |void |av_fill |NN AV *av|SSize_t fill
ApdR |SSize_t|av_len |NN AV *av
ApdR |AV* |av_make |SSize_t size|NN SV **strp
+p |SV* |av_nonelem |NN AV *av|SSize_t ix
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
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|...
+Abfnp |int |fprintf_nocontext|NN PerlIO *stream|NN const char *format|...
+Abfnp |int |printf_nocontext|NN const char *format|...
#endif
: Used in pp.c
p |SV * |core_prototype |NULLOK SV *sv|NN const char *name \
Ap |void |vdeb |NN const char* pat|NULLOK va_list* args
Ap |void |debprofdump
EXp |SV* |multideref_stringify |NN const OP* o|NULLOK CV *cv
+EXp |SV* |multiconcat_stringify |NN const OP* o
Ap |I32 |debop |NN const OP* o
Ap |I32 |debstack
Ap |I32 |debstackptrs
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
+Abp |int |do_binmode |NN PerlIO *fp|int iotype|int mode
: Used in pp.c
Ap |bool |do_close |NULLOK GV* gv|bool not_implicit
: Defined in doio.c, used only in pp_sys.c
#if !defined(WIN32)
p |bool|do_exec3 |NN const char *incmd|int fd|int do_report
#endif
-p |void |do_execfree
#if defined(PERL_IN_DOIO_C)
s |void |exec_failed |NN const char *cmd|int fd|int do_report
+s |bool |argvout_final |NN MAGIC *mg|NN IO *io|bool not_implicit
#endif
#if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM)
: Defined in doio.c, used only in pp_sys.c
pR |I32 |do_ncmp |NN SV *const left|NN SV *const right
Apmb |bool |do_open |NN GV* gv|NN const char* name|I32 len|int as_raw \
|int rawmode|int rawperm|NULLOK PerlIO* supplied_fp
-Ap |bool |do_open9 |NN GV *gv|NN const char *name|I32 len|int as_raw \
+Abp |bool |do_open9 |NN GV *gv|NN const char *name|I32 len|int as_raw \
|int rawmode|int rawperm|NULLOK PerlIO *supplied_fp \
|NN SV *svs|I32 num
+pn |void |setfd_cloexec|int fd
+pn |void |setfd_inhexec|int fd
+p |void |setfd_cloexec_for_nonsysfd|int fd
+p |void |setfd_inhexec_for_sysfd|int fd
+p |void |setfd_cloexec_or_inhexec_by_sysfdness|int fd
+pR |int |PerlLIO_dup_cloexec|int oldfd
+p |int |PerlLIO_dup2_cloexec|int oldfd|int newfd
+pR |int |PerlLIO_open_cloexec|NN const char *file|int flag
+pR |int |PerlLIO_open3_cloexec|NN const char *file|int flag|int perm
+pnoR |int |my_mkstemp_cloexec|NN char *templte
+#ifdef HAS_PIPE
+pR |int |PerlProc_pipe_cloexec|NN int *pipefd
+#endif
+#ifdef HAS_SOCKET
+pR |int |PerlSock_socket_cloexec|int domain|int type|int protocol
+pR |int |PerlSock_accept_cloexec|int listenfd \
+ |NULLOK struct sockaddr *addr \
+ |NULLOK Sock_size_t *addrlen
+#endif
+#if defined (HAS_SOCKETPAIR) || \
+ (defined (HAS_SOCKET) && defined(SOCK_DGRAM) && \
+ defined(AF_INET) && defined(PF_INET))
+pR |int |PerlSock_socketpair_cloexec|int domain|int type|int protocol \
+ |NN int *pairfd
+#endif
#if defined(PERL_IN_DOIO_C)
s |IO * |openn_setup |NN GV *gv|NN char *mode|NN PerlIO **saveifp \
|NN PerlIO **saveofp|NN int *savefd \
: 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
+p |Size_t |do_trans |NN SV* sv
: Used in my.c and pp.c
p |UV |do_vecget |NN SV* sv|STRLEN offset|int size
: Defined in doop.c, used only in mg.c (with /* XXX slurp this routine */)
|NULLOK SV* const_meth
: FIXME
s |OP* |fold_constants |NN OP * const o
+s |OP* |traverse_op_tree|NN OP* top|NN OP* o
#endif
Afpd |char* |form |NN const char* pat|...
Ap |char* |vform |NN const char* pat|NULLOK va_list* args
ApR |GV* |gv_autoload_pvn |NULLOK HV* stash|NN const char* name \
|STRLEN len|U32 flags
Ap |void |gv_check |NN HV* stash
-Ap |void |gv_efullname |NN SV* sv|NN const GV* gv
+Abp |void |gv_efullname |NN SV* sv|NN const GV* gv
Apmb |void |gv_efullname3 |NN SV* sv|NN const GV* gv|NULLOK const char* prefix
Ap |void |gv_efullname4 |NN SV* sv|NN const GV* gv|NULLOK const char* prefix|bool keepmain
Ap |GV* |gv_fetchfile |NN const char* name
ApM |GV* |gv_fetchmethod_pvn_flags|NN HV* stash|NN const char* name \
|const STRLEN len|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
+Abp |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
: Used in cop.h
XopR |I32 |was_lvalue_sub
ApMRnP |STRLEN |_is_utf8_char_helper|NN const U8 * const s|NN const U8 * e|const U32 flags
-ADMpR |U32 |to_uni_upper_lc|U32 c
-ADMpR |U32 |to_uni_title_lc|U32 c
-ADMpR |U32 |to_uni_lower_lc|U32 c
-ADMpR |bool |is_uni_alnum |UV c
-ADMpR |bool |is_uni_alnumc |UV c
-ADMpR |bool |is_uni_idfirst |UV c
-ADMpR |bool |is_uni_alpha |UV c
-ADMpPR |bool |is_uni_ascii |UV c
-ADMpPR |bool |is_uni_blank |UV c
-ADMpPR |bool |is_uni_space |UV c
-ADMpPR |bool |is_uni_cntrl |UV c
-ADMpR |bool |is_uni_graph |UV c
-ADMpR |bool |is_uni_digit |UV c
-ADMpR |bool |is_uni_upper |UV c
-ADMpR |bool |is_uni_lower |UV c
-ADMpR |bool |is_uni_print |UV c
-ADMpR |bool |is_uni_punct |UV c
-ADMpPR |bool |is_uni_xdigit |UV c
+AbDMpR |U32 |to_uni_upper_lc|U32 c
+AbDMpR |U32 |to_uni_title_lc|U32 c
+AbDMpR |U32 |to_uni_lower_lc|U32 c
+AbDMpR |bool |is_uni_alnum |UV c
+AbDMpR |bool |is_uni_alnumc |UV c
+AbDMpR |bool |is_uni_idfirst |UV c
+AbDMpR |bool |is_uni_alpha |UV c
+AbDMpPR |bool |is_uni_ascii |UV c
+AbDMpPR |bool |is_uni_blank |UV c
+AbDMpPR |bool |is_uni_space |UV c
+AbDMpPR |bool |is_uni_cntrl |UV c
+AbDMpR |bool |is_uni_graph |UV c
+AbDMpR |bool |is_uni_digit |UV c
+AbDMpR |bool |is_uni_upper |UV c
+AbDMpR |bool |is_uni_lower |UV c
+AbDMpR |bool |is_uni_print |UV c
+AbDMpR |bool |is_uni_punct |UV c
+AbDMpPR |bool |is_uni_xdigit |UV c
AMp |UV |to_uni_upper |UV c|NN U8 *p|NN STRLEN *lenp
AMp |UV |to_uni_title |UV c|NN U8 *p|NN STRLEN *lenp
-ADMpR |bool |isIDFIRST_lazy |NN const char* p
-ADMpR |bool |isALNUM_lazy |NN const char* p
+AbDMpR |bool |isIDFIRST_lazy |NN const char* p
+AbDMpR |bool |isALNUM_lazy |NN const char* p
+p |void |init_uniprops
#ifdef PERL_IN_UTF8_C
snR |U8 |to_lower_latin1|const U8 c|NULLOK U8 *p|NULLOK STRLEN *lenp \
|const char dummy
# ifndef UV_IS_QUAD
-inR |bool |is_utf8_cp_above_31_bits|NN const U8 * const s|NN const U8 * const e
+snR |int |is_utf8_cp_above_31_bits|NN const U8 * const s \
+ |NN const U8 * const e \
+ |const bool consider_overlongs
# endif
#endif
#if defined(PERL_IN_UTF8_C) || defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C)
-EXp |UV |_to_fold_latin1|const U8 c|NN U8 *p|NN STRLEN *lenp|const unsigned int flags
+EXnp |UV |_to_fold_latin1|const U8 c|NN U8 *p|NN STRLEN *lenp|const unsigned int flags
#endif
#if defined(PERL_IN_UTF8_C) || defined(PERL_IN_PP_C)
p |UV |_to_upper_title_latin1|const U8 c|NN U8 *p|NN STRLEN *lenp|const char S_or_s
AMp |UV |to_uni_lower |UV c|NN U8 *p|NN STRLEN *lenp
AMmp |UV |to_uni_fold |UV c|NN U8 *p|NN STRLEN *lenp
AMp |UV |_to_uni_fold_flags|UV c|NN U8 *p|NN STRLEN *lenp|U8 flags
-ADMpR |bool |is_uni_alnum_lc|UV c
-ADMpR |bool |is_uni_alnumc_lc|UV c
-ADMpR |bool |is_uni_idfirst_lc|UV c
+AbDMpR |bool |is_uni_alnum_lc|UV c
+AbDMpR |bool |is_uni_alnumc_lc|UV c
+AbDMpR |bool |is_uni_idfirst_lc|UV c
AMpR |bool |_is_uni_perl_idcont|UV c
AMpR |bool |_is_uni_perl_idstart|UV c
-ADMpR |bool |is_uni_alpha_lc|UV c
-ADMpPR |bool |is_uni_ascii_lc|UV c
-ADMpPR |bool |is_uni_space_lc|UV c
-ADMpPR |bool |is_uni_blank_lc|UV c
-ADMpPR |bool |is_uni_cntrl_lc|UV c
-ADMpR |bool |is_uni_graph_lc|UV c
-ADMpR |bool |is_uni_digit_lc|UV c
-ADMpR |bool |is_uni_upper_lc|UV c
-ADMpR |bool |is_uni_lower_lc|UV c
-ADMpR |bool |is_uni_print_lc|UV c
-ADMpR |bool |is_uni_punct_lc|UV c
-ADMpPR |bool |is_uni_xdigit_lc|UV c
+AbDMpR |bool |is_uni_alpha_lc|UV c
+AbDMpPR |bool |is_uni_ascii_lc|UV c
+AbDMpPR |bool |is_uni_space_lc|UV c
+AbDMpPR |bool |is_uni_blank_lc|UV c
+AbDMpPR |bool |is_uni_cntrl_lc|UV c
+AbDMpR |bool |is_uni_graph_lc|UV c
+AbDMpR |bool |is_uni_digit_lc|UV c
+AbDMpR |bool |is_uni_upper_lc|UV c
+AbDMpR |bool |is_uni_lower_lc|UV c
+AbDMpR |bool |is_uni_print_lc|UV c
+AbDMpR |bool |is_uni_punct_lc|UV c
+AbDMpPR |bool |is_uni_xdigit_lc|UV c
AndmoR |bool |is_utf8_invariant_string|NN const U8* const s \
- |STRLEN const len
+ |STRLEN len
AnidR |bool |is_utf8_invariant_string_loc|NN const U8* const s \
- |STRLEN const len \
+ |STRLEN len \
|NULLOK const U8 ** ep
-AmnpdRP |bool |is_ascii_string|NN const U8* const s|const STRLEN len
-AmnpdRP |bool |is_invariant_string|NN const U8* const s|const STRLEN len
-AnpdD |STRLEN |is_utf8_char |NN const U8 *s
+#ifndef EBCDIC
+AniR |unsigned int|_variant_byte_number|PERL_UINTMAX_T word
+#endif
+#if defined(PERL_CORE) || defined(PERL_EXT)
+EinR |Size_t |variant_under_utf8_count|NN const U8* const s \
+ |NN const U8* const e
+#endif
+AmnpdRP |bool |is_ascii_string|NN const U8* const s|STRLEN len
+AmnpdRP |bool |is_invariant_string|NN const U8* const s|STRLEN len
+#if defined(PERL_CORE) || defined (PERL_EXT)
+EXnidR |bool |is_utf8_non_invariant_string|NN const U8* const s \
+ |STRLEN len
+#endif
+AbnpdD |STRLEN |is_utf8_char |NN const U8 *s
Abmnpd |STRLEN |is_utf8_char_buf|NN const U8 *buf|NN const U8 *buf_end
-AnipdR |bool |is_utf8_string |NN const U8 *s|const STRLEN len
+AnidR |Size_t |isUTF8_CHAR|NN const U8 * const s0 \
+ |NN const U8 * const e
+AnidR |Size_t |isSTRICT_UTF8_CHAR |NN const U8 * const s0 \
+ |NN const U8 * const e
+AnidR |Size_t |isC9_STRICT_UTF8_CHAR |NN const U8 * const s0 \
+ |NN const U8 * const e
+AnmdpR |bool |is_utf8_string |NN const U8 *s|STRLEN len
AnidR |bool |is_utf8_string_flags \
- |NN const U8 *s|const STRLEN len|const U32 flags
-AnidR |bool |is_strict_utf8_string|NN const U8 *s|const STRLEN len
-AnidR |bool |is_c9strict_utf8_string|NN const U8 *s|const STRLEN len
+ |NN const U8 *s|STRLEN len|const U32 flags
+AnmdpR |bool |is_strict_utf8_string|NN const U8 *s|STRLEN len
+AnmdpR |bool |is_c9strict_utf8_string|NN const U8 *s|STRLEN len
Anpdmb |bool |is_utf8_string_loc \
|NN const U8 *s|const STRLEN len|NN const U8 **ep
Andm |bool |is_utf8_string_loc_flags \
- |NN const U8 *s|const STRLEN len|NN const U8 **ep \
+ |NN const U8 *s|STRLEN len|NN const U8 **ep \
|const U32 flags
Andm |bool |is_strict_utf8_string_loc \
- |NN const U8 *s|const STRLEN len|NN const U8 **ep
+ |NN const U8 *s|STRLEN len|NN const U8 **ep
Andm |bool |is_c9strict_utf8_string_loc \
- |NN const U8 *s|const STRLEN len|NN const U8 **ep
+ |NN const U8 *s|STRLEN len|NN const U8 **ep
Anipd |bool |is_utf8_string_loclen \
- |NN const U8 *s|const STRLEN len|NULLOK const U8 **ep \
+ |NN const U8 *s|STRLEN len|NULLOK const U8 **ep \
|NULLOK STRLEN *el
Anid |bool |is_utf8_string_loclen_flags \
- |NN const U8 *s|const STRLEN len|NULLOK const U8 **ep \
+ |NN const U8 *s|STRLEN len|NULLOK const U8 **ep \
|NULLOK STRLEN *el|const U32 flags
Anid |bool |is_strict_utf8_string_loclen \
- |NN const U8 *s|const STRLEN len|NULLOK const U8 **ep \
+ |NN const U8 *s|STRLEN len|NULLOK const U8 **ep \
|NULLOK STRLEN *el
Anid |bool |is_c9strict_utf8_string_loclen \
- |NN const U8 *s|const STRLEN len|NULLOK const U8 **ep \
+ |NN const U8 *s|STRLEN len|NULLOK const U8 **ep \
|NULLOK STRLEN *el
Amnd |bool |is_utf8_fixed_width_buf_flags \
- |NN const U8 * const s|const STRLEN len|const U32 flags
+ |NN const U8 * const s|STRLEN len|const U32 flags
Amnd |bool |is_utf8_fixed_width_buf_loc_flags \
- |NN const U8 * const s|const STRLEN len \
+ |NN const U8 * const s|STRLEN len \
|NULLOK const U8 **ep|const U32 flags
Anid |bool |is_utf8_fixed_width_buf_loclen_flags \
- |NN const U8 * const s|const STRLEN len \
+ |NN const U8 * const s|STRLEN len \
|NULLOK const U8 **ep|NULLOK STRLEN *el|const U32 flags
AmndP |bool |is_utf8_valid_partial_char \
|NN const U8 * const s|NN const U8 * const e
|NN const char * const file|const unsigned line
AMpR |bool |_is_utf8_FOO_with_len|const U8 classnum|NN const U8 *p \
|NN const U8 * const e
-ADMpR |bool |is_utf8_alnum |NN const U8 *p
-ADMpR |bool |is_utf8_alnumc |NN const U8 *p
-ADMpR |bool |is_utf8_idfirst|NN const U8 *p
-ADMpR |bool |is_utf8_xidfirst|NN const U8 *p
+AbDMpR |bool |is_utf8_alnum |NN const U8 *p
+AbDMpR |bool |is_utf8_alnumc |NN const U8 *p
+AbDMpR |bool |is_utf8_idfirst|NN const U8 *p
+AbDMpR |bool |is_utf8_xidfirst|NN const U8 *p
AMpR |bool |_is_utf8_idcont|NN const U8 *p
AMpR |bool |_is_utf8_idstart|NN const U8 *p
AMpR |bool |_is_utf8_xidcont|NN const U8 *p
|NN const U8 * const e
AMpR |bool |_is_utf8_perl_idstart_with_len|NN const U8 *p \
|NN const U8 * const e
-ADMpR |bool |is_utf8_idcont |NN const U8 *p
-ADMpR |bool |is_utf8_xidcont |NN const U8 *p
-ADMpR |bool |is_utf8_alpha |NN const U8 *p
-ADMpR |bool |is_utf8_ascii |NN const U8 *p
-ADMpR |bool |is_utf8_blank |NN const U8 *p
-ADMpR |bool |is_utf8_space |NN const U8 *p
-ADMpR |bool |is_utf8_perl_space |NN const U8 *p
-ADMpR |bool |is_utf8_perl_word |NN const U8 *p
-ADMpR |bool |is_utf8_cntrl |NN const U8 *p
-ADMpR |bool |is_utf8_digit |NN const U8 *p
-ADMpR |bool |is_utf8_posix_digit |NN const U8 *p
-ADMpR |bool |is_utf8_graph |NN const U8 *p
-ADMpR |bool |is_utf8_upper |NN const U8 *p
-ADMpR |bool |is_utf8_lower |NN const U8 *p
-ADMpR |bool |is_utf8_print |NN const U8 *p
-ADMpR |bool |is_utf8_punct |NN const U8 *p
-ADMpR |bool |is_utf8_xdigit |NN const U8 *p
+AbDMpR |bool |is_utf8_idcont |NN const U8 *p
+AbDMpR |bool |is_utf8_xidcont |NN const U8 *p
+AbDMpR |bool |is_utf8_alpha |NN const U8 *p
+AbDMpR |bool |is_utf8_ascii |NN const U8 *p
+AbDMpR |bool |is_utf8_blank |NN const U8 *p
+AbDMpR |bool |is_utf8_space |NN const U8 *p
+AbDMpR |bool |is_utf8_perl_space |NN const U8 *p
+AbDMpR |bool |is_utf8_perl_word |NN const U8 *p
+AbDMpR |bool |is_utf8_cntrl |NN const U8 *p
+AbDMpR |bool |is_utf8_digit |NN const U8 *p
+AbDMpR |bool |is_utf8_posix_digit |NN const U8 *p
+AbDMpR |bool |is_utf8_graph |NN const U8 *p
+AbDMpR |bool |is_utf8_upper |NN const U8 *p
+AbDMpR |bool |is_utf8_lower |NN const U8 *p
+AbDMpR |bool |is_utf8_print |NN const U8 *p
+AbDMpR |bool |is_utf8_punct |NN const U8 *p
+AbDMpR |bool |is_utf8_xdigit |NN const U8 *p
AMpR |bool |_is_utf8_mark |NN const U8 *p
-ADMpR |bool |is_utf8_mark |NN const U8 *p
+AbDMpR |bool |is_utf8_mark |NN const U8 *p
+#if defined(PERL_CORE) || defined(PERL_EXT)
+EXdpR |bool |isSCRIPT_RUN |NN const U8 *s|NN const U8 *send \
+ |const bool utf8_target
+#endif
: Used in perly.y
p |OP* |jmaybe |NN OP *o
: Used in pp.c
Ap |void |op_refcnt_unlock
Apdn |OP* |op_sibling_splice|NULLOK OP *parent|NULLOK OP *start \
|int del_count|NULLOK OP* insert
-#ifdef PERL_OP_PARENT
Apdn |OP* |op_parent|NN OP *o
-#endif
#if defined(PERL_IN_OP_C)
s |OP* |listkids |NULLOK OP* o
#endif
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
#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_TOKE_C) || defined(PERL_IN_DQUOTE_C)
-EMpRX |bool |grok_bslash_x |NN char** s|NN UV* uv \
+EMpRX |bool |grok_bslash_x |NN char** s \
+ |NN const char* const send \
+ |NN UV* uv \
|NN const char** error_msg \
|const bool output_warning \
|const bool strict \
|const bool silence_non_portable \
|const bool utf8
EMpRX |char |grok_bslash_c |const char source|const bool output_warning
-EMpRX |bool |grok_bslash_o |NN char** s|NN UV* uv \
+EMpRX |bool |grok_bslash_o |NN char** s \
+ |NN const char* const send \
+ |NN UV* uv \
|NN const char** error_msg \
|const bool output_warning \
|const bool strict \
p |int |magic_setdbline|NN SV* sv|NN MAGIC* mg
p |int |magic_setdebugvar|NN SV* sv|NN MAGIC* mg
p |int |magic_setdefelem|NN SV* sv|NN MAGIC* mg
+p |int |magic_setnonelem|NN SV* sv|NN MAGIC* mg
p |int |magic_setenv |NN SV* sv|NN MAGIC* mg
dp |int |magic_sethint |NN SV* sv|NN MAGIC* mg
p |int |magic_setisa |NN SV* sv|NN MAGIC* mg
|I32 klen
: Defined in mg.c, used only in scope.c
pd |void |mg_localize |NN SV* sv|NN SV* nsv|bool setmagic
+Apd |SV* |sv_string_from_errnum|int errnum|NULLOK SV* tgtsv
ApdRn |MAGIC* |mg_find |NULLOK const SV* sv|int type
ApdRn |MAGIC* |mg_findext |NULLOK const SV* sv|int type|NULLOK const MGVTBL *vtbl
: exported for re.pm
EXpR |MAGIC* |mg_find_mglob |NN SV* sv
Apd |int |mg_free |NN SV* sv
Apd |void |mg_free_type |NN SV* sv|int how
+Apd |void |mg_freeext |NN SV* sv|int how|NULLOK const MGVTBL *vtbl
Apd |int |mg_get |NN SV* sv
ApdD |U32 |mg_length |NN SV* sv
Apdn |void |mg_magical |NN SV* sv
AMmd |OP* |op_lvalue |NULLOK OP* o|I32 type
poX |OP* |op_lvalue_flags|NULLOK OP* o|I32 type|U32 flags
p |void |finalize_optree |NN OP* o
+p |void |optimize_optree|NN OP* o
#if defined(PERL_IN_OP_C)
+s |void |optimize_op |NN OP* o
s |void |finalize_op |NN OP* o
-s |void |move_proto_attr|NN OP **proto|NN OP **attrs|NN const GV *name
+s |void |move_proto_attr|NN OP **proto|NN OP **attrs \
+ |NN const GV *name|bool curstash
#endif
: 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
Ap |NV |my_atof |NN const char *s
-#if !defined(HAS_MEMCPY) || (!defined(HAS_MEMMOVE) && !defined(HAS_SAFE_MEMCPY))
-Anp |void* |my_bcopy |NN const void* vfrom|NN void* vto|size_t len
-#endif
-#if !defined(HAS_BZERO) && !defined(HAS_MEMSET)
-Anp |void* |my_bzero |NN void* vloc|size_t len
-#endif
Apr |void |my_exit |U32 status
Apr |void |my_failure_exit
Ap |I32 |my_fflush_all
Anp |void |atfork_unlock
Apmb |I32 |my_lstat
pX |I32 |my_lstat_flags |NULLOK const U32 flags
-#if !defined(HAS_MEMCMP) || !defined(HAS_SANE_MEMCMP)
-AnpP |int |my_memcmp |NN const void* vs1|NN const void* vs2|size_t len
-#endif
-#if !defined(HAS_MEMSET)
-Anp |void* |my_memset |NN void* vloc|int ch|size_t len
+#if ! defined(HAS_MEMRCHR) && (defined(PERL_CORE) || defined(PERL_EXT))
+Exin |void * |my_memrchr |NN const char * s|const char c|const STRLEN len
#endif
#if !defined(PERL_IMPLICIT_SYS)
Ap |I32 |my_pclose |NULLOK PerlIO* ptr
ApdR |OP* |newSTATEOP |I32 flags|NULLOK char* label|NULLOK OP* o
Apbm |CV* |newSUB |I32 floor|NULLOK OP* o|NULLOK OP* proto \
|NULLOK OP* block
-p |CV * |newXS_len_flags|NULLOK const char *name|STRLEN len \
+pd |CV * |newXS_len_flags|NULLOK const char *name|STRLEN len \
|NN XSUBADDR_t subaddr\
|NULLOK const char *const filename \
|NULLOK const char *const proto \
po |OP* |ck_entersub_args_core|NN OP *entersubop|NN GV *namegv \
|NN SV *protosv
Apd |void |cv_get_call_checker|NN CV *cv|NN Perl_call_checker *ckfun_p|NN SV **ckobj_p
+Apd |void |cv_get_call_checker_flags|NN CV *cv|U32 gflags|NN Perl_call_checker *ckfun_p|NN SV **ckobj_p|NN U32 *ckflags_p
Apd |void |cv_set_call_checker|NN CV *cv|NN Perl_call_checker ckfun|NN SV *ckobj
Apd |void |cv_set_call_checker_flags|NN CV *cv \
|NN Perl_call_checker ckfun \
- |NN SV *ckobj|U32 flags
+ |NN SV *ckobj|U32 ckflags
Apd |void |wrap_op_checker|Optype opcode|NN Perl_check_t new_checker|NN Perl_check_t *old_checker_p
+AMpd |void |wrap_keyword_plugin|NN Perl_keyword_plugin_t new_plugin|NN Perl_keyword_plugin_t *old_plugin_p
ApR |PERL_SI*|new_stackinfo|I32 stitems|I32 cxitems
Ap |char* |scan_vstring |NN const char *s|NN const char *const e \
|NN SV *sv
ApdO |I32 |call_argv |NN const char* sub_name|I32 flags|NN char** argv
ApdO |I32 |call_method |NN const char* methname|I32 flags
ApdO |I32 |call_pv |NN const char* sub_name|I32 flags
-ApdO |I32 |call_sv |NN SV* sv|VOL I32 flags
+ApdO |I32 |call_sv |NN SV* sv|volatile I32 flags
Ap |void |despatch_signals
Ap |OP * |doref |NN OP *o|I32 type|bool set_op_ref
ApdO |SV* |eval_pv |NN const char* p|I32 croak_on_error
ApdO |HV* |get_hv |NN const char *name|I32 flags
ApdO |CV* |get_cv |NN const char* name|I32 flags
Apd |CV* |get_cvn_flags |NN const char* name|STRLEN len|I32 flags
-#ifdef WIN32
-ApM |char* |my_setlocale |int category|NULLOK const char* locale
+Ando |const char*|Perl_setlocale|const int category|NULLOK const char* locale
+#if defined(HAS_NL_LANGINFO) && defined(PERL_LANGINFO_H)
+Ando |const char*|Perl_langinfo|const nl_item item
#else
-AmM |char* |my_setlocale |int category|NULLOK const char* locale
+Ando |const char*|Perl_langinfo|const int item
#endif
ApOM |int |init_i18nl10n |int printwarn
-ApOM |int |init_i18nl14n |int printwarn
-ApM |char* |my_strerror |const int errnum
-ApOM |void |new_collate |NULLOK const char* newcoll
-ApOM |void |new_ctype |NN const char* newctype
-EXpMn |void |_warn_problematic_locale
-ApOM |void |new_numeric |NULLOK const char* newcoll
-Ap |void |set_numeric_local
-Ap |void |set_numeric_radix
-Ap |void |set_numeric_standard
-ApM |bool |_is_in_locale_category|const bool compiling|const int category
-Apd |void |sync_locale
+AbpOM |int |init_i18nl14n |int printwarn
+p |char* |my_strerror |const int errnum
+Xpn |void |_warn_problematic_locale
+Xp |void |set_numeric_underlying
+Xp |void |set_numeric_standard
+Xp |bool |_is_in_locale_category|const bool compiling|const int category
+Apdn |void |switch_to_global_locale
+Apdn |bool |sync_locale
+ApMn |void |thread_locale_init
+ApMn |void |thread_locale_term
ApdO |void |require_pv |NN const char* pv
-Apd |void |pack_cat |NN SV *cat|NN const char *pat|NN const char *patend \
+Abpd |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
#if defined(PERL_USES_PL_PIDSTATUS) && defined(PERL_IN_UTIL_C)
s |OP* |refkids |NULLOK OP* o|I32 type
#endif
Ap |void |regdump |NN const regexp* r
-ApM |SV* |regclass_swash |NULLOK const regexp *prog \
- |NN const struct regnode *node|bool doinit \
- |NULLOK SV **listsvp|NULLOK SV **altsvp
#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_PERL_C) || defined(PERL_IN_UTF8_C)
EXpR |SV* |_new_invlist_C_array|NN const UV* const list
EXMp |bool |_invlistEQ |NN SV* const a|NN SV* const b|const bool complement_b
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 |NULLOK REGEXP* ret_x|NN REGEXP* rx
+EXp |REGEXP*|reg_temp_copy |NULLOK REGEXP* dsv|NN REGEXP* ssv
Ap |void |regfree_internal|NN REGEXP *const rx
#if defined(USE_ITHREADS)
Ap |void* |regdupe_internal|NN REGEXP * const r|NN CLONE_PARAMS* param
|NN const regexp_engine* eng \
|NULLOK REGEXP *old_re \
|NULLOK bool *is_bare_re \
- |U32 rx_flags|U32 pm_flags
+ |const U32 rx_flags|const U32 pm_flags
Ap |REGEXP*|re_compile |NN SV * const pattern|U32 orig_rx_flags
Ap |char* |re_intuit_start|NN REGEXP * const rx \
|NULLOK SV* sv \
Ap |void |save_int |NN int* intp
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
+Abp |void |save_list |NN SV** sarg|I32 maxsarg
+Abp |void |save_long |NN long* longp
Apmb |void |save_mortalizesv|NN SV* sv
-Ap |void |save_nogv |NN GV* gv
+Abp |void |save_nogv |NN GV* gv
: Used in SAVEFREOP(), used in gv.c, op.c, perl.c, pp_ctl.c, pp_sort.c
Apmb |void |save_op
Ap |SV* |save_scalar |NN GV* gv
#endif
Ap |SV** |stack_grow |NN SV** sp|NN SV** p|SSize_t n
Ap |I32 |start_subparse |I32 is_format|U32 flags
+Xp |void |init_named_cv |NN CV *cv|NN OP *nameop
: Used in pp_ctl.c
p |void |sub_crush_depth|NN CV* cv
-Amd |bool |sv_2bool |NN SV *const sv
+Apbmd |bool |sv_2bool |NN SV *const sv
Apd |bool |sv_2bool_flags |NN SV *sv|I32 flags
Apd |CV* |sv_2cv |NULLOK SV* sv|NN HV **const st|NN GV **const gvp \
|const I32 lref
Apd |char* |sv_2pv_flags |NN SV *const sv|NULLOK STRLEN *const lp|const I32 flags
Apd |char* |sv_2pvutf8 |NN SV *sv|NULLOK STRLEN *const lp
Apd |char* |sv_2pvbyte |NN SV *sv|NULLOK STRLEN *const lp
-Ap |char* |sv_pvn_nomg |NN SV* sv|NULLOK STRLEN* lp
+Abp |char* |sv_pvn_nomg |NN SV* sv|NULLOK STRLEN* lp
Apmb |UV |sv_2uv |NN SV *sv
Apd |UV |sv_2uv_flags |NN SV *const sv|const I32 flags
-Apd |IV |sv_iv |NN SV* sv
-Apd |UV |sv_uv |NN SV* sv
-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
+Abpd |IV |sv_iv |NN SV* sv
+Abpd |UV |sv_uv |NN SV* sv
+Abpd |NV |sv_nv |NN SV* sv
+Abpd |char* |sv_pvn |NN SV *sv|NN STRLEN *lp
+Abpd |char* |sv_pvutf8n |NN SV *sv|NN STRLEN *lp
+Abpd |char* |sv_pvbyten |NN SV *sv|NN STRLEN *lp
Apd |I32 |sv_true |NULLOK SV *const sv
#if defined(PERL_IN_SV_C)
sd |void |sv_add_arena |NN char *const ptr|const U32 size \
Apd |I32 |sv_cmp_locale_flags |NULLOK SV *const sv1 \
|NULLOK SV *const sv2|const U32 flags
#if defined(USE_LOCALE_COLLATE)
-Amd |char* |sv_collxfrm |NN SV *const sv|NN STRLEN *const nxp
+Apbmd |char* |sv_collxfrm |NN SV *const sv|NN STRLEN *const nxp
Apd |char* |sv_collxfrm_flags |NN SV *const sv|NN STRLEN *const nxp|I32 const flags
#endif
Apd |int |getcwd_sv |NN SV* sv
ApdR |bool |sv_does_pv |NN SV* sv|NN const char *const name|U32 flags
ApdR |bool |sv_does_pvn |NN SV* sv|NN const char *const name|const STRLEN len \
|U32 flags
-Amd |I32 |sv_eq |NULLOK SV* sv1|NULLOK SV* sv2
+Apbmd |I32 |sv_eq |NULLOK SV* sv1|NULLOK SV* sv2
Apd |I32 |sv_eq_flags |NULLOK SV* sv1|NULLOK SV* sv2|const U32 flags
Apd |void |sv_free |NULLOK SV *const sv
poMX |void |sv_free2 |NN SV *const sv|const U32 refcnt
EXpM |UV |swash_fetch |NN SV *swash|NN const U8 *ptr|bool do_utf8
#ifdef PERL_IN_REGCOMP_C
EiMR |SV* |add_cp_to_invlist |NULLOK SV* invlist|const UV cp
-EiM |void |invlist_set_len|NN SV* const invlist|const UV len|const bool offset
EiMRn |bool |invlist_is_iterating|NN SV* const invlist
#ifndef PERL_EXT_RE_BUILD
EiMRn |UV* |_invlist_array_init |NN SV* const invlist|const bool will_have_0
EsM |void |invlist_extend |NN SV* const invlist|const UV len
EsM |void |invlist_replace_list_destroys_src|NN SV *dest|NN SV *src
EiMRn |IV* |get_invlist_previous_index_addr|NN SV* invlist
+EiM |void |invlist_set_len|NN SV* const invlist|const UV len|const bool offset
EiMn |void |invlist_set_previous_index|NN SV* const invlist|const IV index
EiMRn |IV |invlist_previous_index|NN SV* const invlist
EiMn |void |invlist_trim |NN SV* invlist
EiM |void |invlist_clear |NN SV* invlist
+sM |void |initialize_invlist_guts|NN SV* invlist|const Size_t initial_size
#endif
-EiMR |SV* |invlist_clone |NN SV* const invlist
EiMRn |STRLEN*|get_invlist_iter_addr |NN SV* invlist
EiMn |void |invlist_iterinit|NN SV* invlist
EsMRn |bool |invlist_iternext|NN SV* invlist|NN UV* start|NN UV* end
EXmM |void |_invlist_subtract|NN SV* const a|NN SV* const b|NN SV** result
EXpM |void |_invlist_invert|NN SV* const invlist
EXMpR |SV* |_new_invlist |IV initial_size
-EXMpR |SV* |_swash_to_invlist |NN SV* const swash
EXMpR |SV* |_add_range_to_invlist |NULLOK SV* invlist|UV start|UV end
EXMpR |SV* |_setup_canned_invlist|const STRLEN size|const UV element0|NN UV** other_elements_ptr
-EXMpn |void |_invlist_populate_swatch |NN SV* const invlist|const UV start|const UV end|NN U8* swatch
#endif
-#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C) || defined(PERL_IN_UTF8_C) || defined(PERL_IN_TOKE_C)
-EXp |SV* |_core_swash_init|NN const char* pkg|NN const char* name \
- |NN SV* listsv|I32 minbits|I32 none \
- |NULLOK SV* invlist|NULLOK U8* const flags_p
+#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_SV_C)
+EMpX |SV* |invlist_clone |NN SV* const invlist|NULLOK SV* newlist
#endif
-#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C) || defined(PERL_IN_UTF8_C)
+#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C) || defined(PERL_IN_TOKE_C) || defined(PERL_IN_UTF8_C) || defined(PERL_IN_PP_C)
EiMRn |UV* |invlist_array |NN SV* const invlist
+EiMRn |bool |is_invlist |NN SV* const invlist
EiMRn |bool* |get_invlist_offset_addr|NN SV* invlist
EiMRn |UV |_invlist_len |NN SV* const invlist
EMiRn |bool |_invlist_contains_cp|NN SV* const invlist|const UV cp
EXpMRn |SSize_t|_invlist_search |NN SV* const invlist|const UV cp
-EXMpR |SV* |_get_swash_invlist|NN SV* const swash
-EXMpR |HV* |_swash_inversion_hash |NN SV* const swash
#endif
#if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C)
EXpM |SV* |_get_regclass_nonbitmap_data \
|NULLOK SV **listsvp \
|NULLOK SV **lonly_utf8_locale \
|NULLOK SV **output_invlist
-EXp |void|_load_PL_utf8_foldclosures|
#endif
#if defined(PERL_IN_REGCOMP_C) || defined (PERL_IN_DUMP_C)
EXMp |void |_invlist_dump |NN PerlIO *file|I32 level \
Ap |void |taint_env
Ap |void |taint_proper |NULLOK const char* f|NN const char *const s
EpM |char * |_byte_dump_string \
- |NN const U8 * s \
+ |NN const U8 * const start \
|const STRLEN len \
|const bool format
#if defined(PERL_IN_UTF8_C)
-inR |bool |does_utf8_overflow|NN const U8 * const s|NN const U8 * e
+inR |int |does_utf8_overflow|NN const U8 * const s \
+ |NN const U8 * e \
+ |const bool consider_overlongs
inR |int |is_utf8_overlong_given_start_byte_ok|NN const U8 * const s \
|const STRLEN len
inR |int |isFF_OVERLONG |NN const U8 * const s|const STRLEN len
|NN const char * const file \
|const unsigned line
s |UV |_to_utf8_case |const UV uv1 \
- |NN const U8 *p \
+ |NULLOK const U8 *p \
|NN U8* ustrp \
- |NULLOK STRLEN *lenp \
- |NN SV **swashp \
- |NN const char *normal \
- |NULLOK const char *special
+ |NN STRLEN *lenp \
+ |NN SV *invlist \
+ |NN const int * const invmap \
+ |NULLOK const unsigned int * const * const aux_tables \
+ |NULLOK const U8 * const aux_table_lengths \
+ |NN const char * const normal
+s |UV |turkic_fc |NN const U8 * const p |NN const U8 * const e|NN U8* ustrp|NN STRLEN *lenp
+s |UV |turkic_lc |NN const U8 * const p0|NN const U8 * const e|NN U8* ustrp|NN STRLEN *lenp
+s |UV |turkic_uc |NN const U8 * const p |NN const U8 * const e|NN U8* ustrp|NN STRLEN *lenp
#endif
ApbmdD |UV |to_utf8_lower |NN const U8 *p|NN U8* ustrp|NULLOK STRLEN *lenp
AMp |UV |_to_utf8_lower_flags|NN const U8 *p|NULLOK const U8* e \
#if defined(UNLINK_ALL_VERSIONS)
Ap |I32 |unlnk |NN const char* f
#endif
-Apd |I32 |unpack_str |NN const char *pat|NN const char *patend|NN const char *s \
+Abpd |SSize_t|unpack_str |NN const char *pat|NN const char *patend|NN const char *s \
|NULLOK const char *strbeg|NN const char *strend|NULLOK char **new_s \
|I32 ocnt|U32 flags
-Apd |I32 |unpackstring |NN const char *pat|NN const char *patend|NN const char *s \
+Apd |SSize_t|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
ApM |void |_force_out_malformed_utf8_message \
|NN const U8 *const p|NN const U8 * const e|const U32 flags \
|const bool die_here
-Ap |U8* |utf16_to_utf8 |NN U8* p|NN U8 *d|I32 bytelen|NN I32 *newlen
-Ap |U8* |utf16_to_utf8_reversed|NN U8* p|NN U8 *d|I32 bytelen|NN I32 *newlen
-AdpPR |STRLEN |utf8_length |NN const U8* s|NN const U8 *e
+EXp |U8* |utf16_to_utf8 |NN U8* p|NN U8 *d|I32 bytelen|NN I32 *newlen
+EXp |U8* |utf16_to_utf8_reversed|NN U8* p|NN U8 *d|I32 bytelen|NN I32 *newlen
+AdpR |STRLEN |utf8_length |NN const U8* s|NN const U8 *e
AipdR |IV |utf8_distance |NN const U8 *a|NN const U8 *b
AipdRn |U8* |utf8_hop |NN const U8 *s|SSize_t off
AipdRn |U8* |utf8_hop_back|NN const U8 *s|SSize_t off|NN const U8 *start
|NULLOK const U8 ** first_unconverted
ApMd |U8* |bytes_to_utf8 |NN const U8 *s|NN STRLEN *lenp
ApdD |UV |utf8_to_uvchr |NN const U8 *s|NULLOK STRLEN *retlen
-ApdD |UV |utf8_to_uvuni |NN const U8 *s|NULLOK STRLEN *retlen
-ApMD |UV |valid_utf8_to_uvuni |NN const U8 *s|NULLOK STRLEN *retlen
+AbpdD |UV |utf8_to_uvuni |NN const U8 *s|NULLOK STRLEN *retlen
+AbpMD |UV |valid_utf8_to_uvuni |NN const U8 *s|NULLOK STRLEN *retlen
Aopd |UV |utf8_to_uvchr_buf |NN const U8 *s|NN const U8 *send|NULLOK STRLEN *retlen
ApdD |UV |utf8_to_uvuni_buf |NN const U8 *s|NN const U8 *send|NULLOK STRLEN *retlen
pM |bool |check_utf8_print |NN const U8 *s|const STRLEN len
-Adop |UV |utf8n_to_uvchr |NN const U8 *s \
+Adnop |UV |utf8n_to_uvchr |NN const U8 *s \
|STRLEN curlen \
|NULLOK STRLEN *retlen \
|const U32 flags
-Adp |UV |utf8n_to_uvchr_error|NN const U8 *s \
+Adnop |UV |utf8n_to_uvchr_error|NN const U8 *s \
|STRLEN curlen \
|NULLOK STRLEN *retlen \
|const U32 flags \
|NULLOK U32 * errors
+AMndi |UV |utf8n_to_uvchr_msgs|NN const U8 *s \
+ |STRLEN curlen \
+ |NULLOK STRLEN *retlen \
+ |const U32 flags \
+ |NULLOK U32 * errors \
+ |NULLOK AV ** msgs
+AMnp |UV |_utf8n_to_uvchr_msgs_helper \
+ |NN const U8 *s \
+ |STRLEN curlen \
+ |NULLOK STRLEN *retlen \
+ |const U32 flags \
+ |NULLOK U32 * errors \
+ |NULLOK AV ** msgs
AipnR |UV |valid_utf8_to_uvchr |NN const U8 *s|NULLOK STRLEN *retlen
Ap |UV |utf8n_to_uvuni|NN const U8 *s|STRLEN curlen|NULLOK STRLEN *retlen|U32 flags
Adm |U8* |uvchr_to_utf8 |NN U8 *d|UV uv
Ap |U8* |uvuni_to_utf8 |NN U8 *d|UV uv
Adm |U8* |uvchr_to_utf8_flags |NN U8 *d|UV uv|UV flags
-Apd |U8* |uvoffuni_to_utf8_flags |NN U8 *d|UV uv|const UV flags
+AdmM |U8* |uvchr_to_utf8_flags_msgs|NN U8 *d|UV uv|UV flags|NULLOK HV ** msgs
+Apod |U8* |uvoffuni_to_utf8_flags |NN U8 *d|UV uv|const UV flags
+ApM |U8* |uvoffuni_to_utf8_flags_msgs|NN U8 *d|UV uv|const UV flags|NULLOK HV** msgs
Ap |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
+EXpR |Size_t |_inverse_folds |const UV cp \
+ |NN unsigned int * first_folds_to \
+ |NN const unsigned int ** remaining_folds_to
: Used by Data::Alias
EXp |void |vivify_defelem |NN SV* sv
: Used in pp.c
ApmdbR |char* |sv_pvbyte |NN SV *sv
Apmdb |STRLEN |sv_utf8_upgrade|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 |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
+Apd |bool |sv_utf8_decode |NN SV *const sv
Apdmb |void |sv_force_normal|NN SV *sv
Apd |void |sv_force_normal_flags|NN SV *const sv|const U32 flags
pX |SSize_t|tmps_grow_p |SSize_t ix
Apd |SV* |sv_rvweaken |NN SV *const sv
+Apd |SV* |sv_rvunweaken |NN SV *const sv
AnpMd |SV* |sv_get_backrefs|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
Am |CV* |newATTRSUB |I32 floor|NULLOK OP *o|NULLOK OP *proto|NULLOK OP *attrs|NULLOK OP *block
-pX |CV* |newATTRSUB_x |I32 floor|NULLOK OP *o|NULLOK OP *proto \
+pdX |CV* |newATTRSUB_x |I32 floor|NULLOK OP *o|NULLOK OP *proto \
|NULLOK OP *attrs|NULLOK OP *block \
|bool o_is_gv
Ap |CV * |newMYSUB |I32 floor|NN OP *o|NULLOK OP *proto \
#endif
Amop |const XOP * |custom_op_xop |NN const OP *o
-ApR |const char * |custom_op_name |NN const OP *o
-ApR |const char * |custom_op_desc |NN const OP *o
+AbpR |const char * |custom_op_name |NN const OP *o
+AbpR |const char * |custom_op_desc |NN const OP *o
pRX |XOPRETANY |custom_op_get_field |NN const OP *o|const xop_flags_enum field
Aop |void |custom_op_register |NN Perl_ppaddr_t ppaddr \
|NN const XOP *xop
p |void |init_constants
#if defined(PERL_IN_DOOP_C)
-sR |I32 |do_trans_simple |NN SV * const sv
-sR |I32 |do_trans_count |NN SV * const sv
-sR |I32 |do_trans_complex |NN SV * const sv
-sR |I32 |do_trans_simple_utf8 |NN SV * const sv
-sR |I32 |do_trans_count_utf8 |NN SV * const sv
-sR |I32 |do_trans_complex_utf8 |NN SV * const sv
+sR |Size_t |do_trans_simple |NN SV * const sv
+sR |Size_t |do_trans_count |NN SV * const sv
+sR |Size_t |do_trans_complex |NN SV * const sv
+sR |Size_t |do_trans_simple_utf8 |NN SV * const sv
+sR |Size_t |do_trans_count_utf8 |NN SV * const sv
+sR |Size_t |do_trans_complex_utf8 |NN SV * const sv
#endif
#if defined(PERL_IN_GV_C)
#endif
#if defined(PERL_IN_PP_PACK_C)
-s |I32 |unpack_rec |NN struct tempsym* symptr|NN const char *s \
+s |SSize_t|unpack_rec |NN struct tempsym* symptr|NN const char *s \
|NN const char *strbeg|NN const char *strend|NULLOK const char **new_s
s |SV ** |pack_rec |NN SV *cat|NN struct tempsym* symptr|NN SV **beglist|NN SV **endlist
s |SV* |mul128 |NN SV *sv|U8 m
-s |I32 |measure_struct |NN struct tempsym* symptr
+s |SSize_t|measure_struct |NN struct tempsym* symptr
s |bool |next_symbol |NN struct tempsym* symptr
sR |SV* |is_an_int |NN const char *s|STRLEN l
s |int |div128 |NN SV *pnum|NN bool *done
s |const char *|group_end |NN const char *patptr|NN const char *patend \
|char ender
-sR |const char *|get_num |NN const char *patptr|NN I32 *lenptr
+sR |const char *|get_num |NN const char *patptr|NN SSize_t *lenptr
ns |bool |need_utf8 |NN const char *pat|NN const char *patend
ns |char |first_symbol |NN const char *pat|NN const char *patend
sR |char * |sv_exp_grow |NN SV *sv|STRLEN needed
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
#if defined(PERL_IN_PP_SYS_C)
Ep |int |re_printf |NN const char *fmt|...
#endif
#if defined(PERL_IN_REGCOMP_C)
-Es |regnode*|reg |NN RExC_state_t *pRExC_state \
+Es |regnode_offset|reg |NN RExC_state_t *pRExC_state \
|I32 paren|NN I32 *flagp|U32 depth
-Es |regnode*|regnode_guts |NN RExC_state_t *pRExC_state \
+Es |regnode_offset|regnode_guts|NN RExC_state_t *pRExC_state \
|const U8 op \
|const STRLEN extra_len \
|NN const char* const name
-Es |regnode*|reganode |NN RExC_state_t *pRExC_state|U8 op \
+Es |void |change_engine_size|NN RExC_state_t *pRExC_state|const Ptrdiff_t size
+Es |regnode_offset|reganode|NN RExC_state_t *pRExC_state|U8 op \
|U32 arg
-Es |regnode*|reg2Lanode |NN RExC_state_t *pRExC_state \
+Es |regnode_offset|reg2Lanode|NN RExC_state_t *pRExC_state \
|const U8 op \
|const U32 arg1 \
|const I32 arg2
-Es |regnode*|regatom |NN RExC_state_t *pRExC_state \
+Es |regnode_offset|regatom |NN RExC_state_t *pRExC_state \
|NN I32 *flagp|U32 depth
-Es |regnode*|regbranch |NN RExC_state_t *pRExC_state \
+Es |regnode_offset|regbranch |NN RExC_state_t *pRExC_state \
|NN I32 *flagp|I32 first|U32 depth
Es |void |set_ANYOF_arg |NN RExC_state_t* const pRExC_state \
|NN regnode* const node \
|NULLOK SV* const cp_list \
- |NULLOK SV* const runtime_defns \
- |NULLOK SV* const only_utf8_locale_list \
- |NULLOK SV* const swash \
- |const bool has_user_defined_property
-Es |void |output_or_return_posix_warnings \
+ |NULLOK SV* const runtime_defns \
+ |NULLOK SV* const only_utf8_locale_list
+Es |void |output_posix_warnings \
|NN RExC_state_t *pRExC_state \
- |NN AV* posix_warnings \
- |NULLOK AV** return_posix_warnings
+ |NN AV* posix_warnings
Es |AV* |add_multi_match|NULLOK AV* multi_char_matches \
|NN SV* multi_string \
|const STRLEN cp_count
-Es |regnode*|regclass |NN RExC_state_t *pRExC_state \
+Es |regnode_offset|regclass|NN RExC_state_t *pRExC_state \
|NN I32 *flagp|U32 depth|const bool stop_at_1 \
|bool allow_multi_fold \
|const bool silence_non_portable \
|const bool strict \
|bool optimizable \
- |NULLOK SV** ret_invlist \
- |NULLOK AV** return_posix_warnings
+ |NULLOK SV** ret_invlist
Es |void|add_above_Latin1_folds|NN RExC_state_t *pRExC_state|const U8 cp \
|NN SV** invlist
-Ei |regnode*|handle_named_backref|NN RExC_state_t *pRExC_state \
+Ei |regnode_offset|handle_named_backref|NN RExC_state_t *pRExC_state \
|NN I32 *flagp \
|NN char * parse_start \
|char ch
EsnR |unsigned int|regex_set_precedence|const U8 my_operator
-Es |regnode*|handle_regex_sets|NN RExC_state_t *pRExC_state \
+Es |regnode_offset|handle_regex_sets|NN RExC_state_t *pRExC_state \
|NULLOK SV ** return_invlist \
|NN I32 *flagp|U32 depth \
|NN char * const oregcomp_parse
+Es |void |set_regex_pv |NN RExC_state_t *pRExC_state|NN REGEXP *Rx
#if defined(DEBUGGING) && defined(ENABLE_REGEX_SETS_DEBUGGING)
Es |void |dump_regex_sets_structures \
|NN RExC_state_t *pRExC_state \
|const IV fence|NN AV * fence_stack
#endif
Es |void|parse_lparen_question_flags|NN RExC_state_t *pRExC_state
-Es |regnode*|reg_node |NN RExC_state_t *pRExC_state|U8 op
-Es |regnode*|regpiece |NN RExC_state_t *pRExC_state \
+Es |regnode_offset|reg_node|NN RExC_state_t *pRExC_state|U8 op
+Es |regnode_offset|regpiece|NN RExC_state_t *pRExC_state \
|NN I32 *flagp|U32 depth
Es |bool |grok_bslash_N |NN RExC_state_t *pRExC_state \
- |NULLOK regnode** nodep \
+ |NULLOK regnode_offset* nodep \
|NULLOK UV *code_point_p \
|NULLOK int* cp_count \
|NN I32 *flagp \
|const bool strict \
|const U32 depth
Es |void |reginsert |NN RExC_state_t *pRExC_state \
- |U8 op|NN regnode *operand|U32 depth
+ |const U8 op \
+ |const regnode_offset operand \
+ |const U32 depth
Es |void |regtail |NN RExC_state_t * pRExC_state \
- |NN const regnode * const p \
- |NN const regnode * const val \
+ |NN const regnode_offset p \
+ |NN const regnode_offset val \
|const U32 depth
Es |SV * |reg_scan_name |NN RExC_state_t *pRExC_state \
|U32 flags
|NN regnode *scan|NN UV *min_subtract \
|NN bool *unfolded_multi_char \
|U32 flags|NULLOK regnode *val|U32 depth
-Ei |void |alloc_maybe_populate_EXACT|NN RExC_state_t *pRExC_state \
- |NN regnode *node|NN I32 *flagp|STRLEN len \
- |UV code_point|bool downgradable
Ein |U8 |compute_EXACTish|NN RExC_state_t *pRExC_state
Es |void |nextchar |NN RExC_state_t *pRExC_state
Es |void |skip_to_be_ignored_text|NN RExC_state_t *pRExC_state \
|I32 stopparen|U32 recursed_depth \
|NULLOK regnode_ssc *and_withp \
|U32 flags|U32 depth
+EsR |SV * |get_ANYOFM_contents|NN const regnode * n
EsRn |U32 |add_data |NN RExC_state_t* const pRExC_state \
|NN const char* const s|const U32 n
rs |void |re_croak2 |bool utf8|NN const char* pat1|NN const char* pat2|...
|const STRLEN x \
|const STRLEN y \
|const SSize_t maxDistance
+EpX |SV * |parse_uniprop_string|NN const char * const name \
+ |const Size_t name_len \
+ |const bool is_utf8 \
+ |const bool to_fold \
+ |const bool runtime \
+ |NN bool * user_defined_ptr \
+ |NN SV * msg \
+ |const STRLEN level
+EXp |SV * |handle_user_defined_property|NN const char * name \
+ |const STRLEN name_len \
+ |const bool is_utf8 \
+ |const bool to_fold \
+ |const bool runtime \
+ |NN SV* contents \
+ |NN bool *user_defined_ptr \
+ |NN SV * msg \
+ |const STRLEN level
# ifdef DEBUGGING
Ep |int |re_indentf |NN const char *fmt|U32 depth|...
Es |void |regdump_intflags|NULLOK const char *lead| const U32 flags
|NN SV* sv|I32 indent|U32 depth
Es |void |put_code_point |NN SV* sv|UV c
Es |bool |put_charclass_bitmap_innards|NN SV* sv \
- |NN char* bitmap \
+ |NULLOK char* bitmap \
|NULLOK SV* nonbitmap_invlist \
|NULLOK SV* only_utf8_locale_invlist\
|NULLOK const regnode * const node \
|NULLOK HV* widecharmap|NN AV *revcharmap\
|U32 next_alloc|U32 depth
Es |U8 |regtail_study |NN RExC_state_t *pRExC_state \
- |NN regnode *p|NN const regnode *val|U32 depth
+ |NN regnode_offset p|NN const regnode_offset val|U32 depth
# endif
#endif
#endif
#if defined(PERL_IN_REGEXEC_C)
-ERs |bool |isFOO_utf8_lc |const U8 classnum|NN const U8* character
+ERs |bool |isFOO_utf8_lc |const U8 classnum|NN const U8* character|NN const U8* e
+ERns |U8 * |find_next_masked|NN U8 * s \
+ |NN const U8 * send \
+ |const U8 byte|const U8 mask
+ERns |U8 *|find_span_end |NN U8* s|NN const U8 * send|const U8 span_byte
+ERns |U8 *|find_span_end_mask|NN U8 * s|NN const U8 * send \
+ |const U8 span_byte|const U8 mask
ERs |SSize_t|regmatch |NN regmatch_info *reginfo|NN char *startpos|NN regnode *prog
WERs |I32 |regrepeat |NN regexp *prog|NN char **startposp \
|NN const regnode *p \
|NN const U8 * const strbeg \
|NN U8 ** curpos \
|const bool utf8_target
+Ein |I32 |foldEQ_latin1_s2_folded|NN const char* a|NN const char* b|I32 len
# ifdef DEBUGGING
Es |void |dump_exec_pos |NN const char *locinput|NN const regnode *scan|NN const char *loc_regeol\
|NN const char *loc_bostr|NN const char *loc_reg_starttry|const bool do_utf8|const U32 depth
pX |void |sv_del_backref |NN SV *const tsv|NN SV *const sv
#if defined(PERL_IN_SV_C)
-nsR |char * |uiv_2buf |NN char *const buf|const IV iv|UV uv|const int is_uv|NN char **const peob
+niR |char * |uiv_2buf |NN char *const buf|const IV iv|UV uv|const int is_uv|NN char **const peob
i |void |sv_unglob |NN SV *const sv|U32 flags
s |const char *|sv_display |NN SV *const sv|NN char *tmpbuf|STRLEN tmpbuf_size
s |void |not_a_number |NN SV *const sv
|NN const char *what
s |void |force_ident |NN const char *s|int kind
s |void |force_ident_maybe_lex|char pit
-s |void |incline |NN const char *s
+s |void |incline |NN const char *s|NN const char *end
s |int |intuit_method |NN char *s|NULLOK SV *ioname|NULLOK CV *cv
-s |int |intuit_more |NN char *s
+s |int |intuit_more |NN char *s|NN char *e
s |I32 |lop |I32 f|U8 x|NN char *s
-rs |void |missingterm |NULLOK char *s
+rs |void |missingterm |NULLOK char *s|STRLEN len
s |void |no_op |NN const char *const what|NULLOK char *s
s |int |pending_ident
sR |I32 |sublex_done
s |int |ao |int toketype
s |void|parse_ident|NN char **s|NN char **d \
|NN char * const e|int allow_package \
- |bool is_utf8|bool check_dollar
+ |bool is_utf8|bool check_dollar \
+ |bool tick_warn
# if defined(PERL_CR_FILTER)
s |I32 |cr_textfilter |int idx|NULLOK SV *sv|int maxlen
s |void |strip_return |NN SV *sv
sf |void |printbuf |NN const char *const fmt|NN const char *const s
# endif
#endif
-EXMp |bool |validate_proto |NN SV *name|NULLOK SV *proto|bool warn
+EXMp |bool |validate_proto |NN SV *name|NULLOK SV *proto|bool warn \
+ |bool curstash
#if defined(PERL_IN_UNIVERSAL_C)
s |bool |isa_lookup |NN HV *stash|NN const char * const name \
|STRLEN len|U32 flags
#endif
-#if defined(USE_LOCALE) && defined(PERL_IN_LOCALE_C)
+#if defined(PERL_IN_LOCALE_C)
+# ifdef USE_LOCALE
+sn |const char*|category_name |const int category
+s |const char*|switch_category_locale_to_template|const int switch_category|const int template_category|NULLOK const char * template_locale
+s |void |restore_switched_locale|const int category|NULLOK const char * const original_locale
+# endif
+# ifdef HAS_NL_LANGINFO
+sn |const char*|my_nl_langinfo|const nl_item item|bool toggle
+# else
+sn |const char*|my_nl_langinfo|const int item|bool toggle
+# endif
+inR |const char *|save_to_buffer|NULLOK const char * string \
+ |NULLOK char **buf \
+ |NN Size_t *buf_size \
+ |const Size_t offset
+# if defined(USE_LOCALE)
s |char* |stdize_locale |NN char* locs
-# ifdef DEBUGGING
+s |void |new_collate |NULLOK const char* newcoll
+s |void |new_ctype |NN const char* newctype
+s |void |set_numeric_radix|const bool use_locale
+s |void |new_numeric |NULLOK const char* newnum
+# ifdef USE_POSIX_2008_LOCALE
+sn |const char*|emulate_setlocale|const int category \
+ |NULLOK const char* locale \
+ |unsigned int index \
+ |const bool is_index_valid
+# endif
+# ifdef WIN32
+s |char* |win32_setlocale|int category|NULLOK const char* locale
+# endif
+# ifdef DEBUGGING
s |void |print_collxfrm_input_and_return \
|NN const char * const s \
|NN const char * const e \
|NULLOK const STRLEN * const xlen \
|const bool is_utf8
-# endif
+s |void |print_bytes_for_locale |NN const char * const s \
+ |NN const char * const e \
+ |const bool is_utf8
+snR |char * |setlocale_debug_string |const int category \
+ |NULLOK const char* const locale \
+ |NULLOK const char* const retval
+# endif
+# endif
#endif
-#if defined(USE_LOCALE) \
- && (defined(PERL_IN_LOCALE_C) || defined (PERL_EXT_POSIX))
+#if defined(USE_LOCALE) \
+ && ( defined(PERL_IN_LOCALE_C) \
+ || defined(PERL_IN_MG_C) \
+ || defined (PERL_EXT_POSIX) \
+ || defined (PERL_EXT_LANGINFO))
ApM |bool |_is_cur_LC_category_utf8|int category
-# ifdef DEBUGGING
-AMnpR |char * |_setlocale_debug_string|const int category \
- |NULLOK const char* const locale \
- |NULLOK const char* const retval
-# endif
#endif
pn |Malloc_t |mem_log_free |Malloc_t oldalloc|NN const char *filename|const int linenumber|NN const char *funcname
#endif
-#if defined(PERL_IN_NUMERIC_C)
-#ifndef USE_QUADMATH
-sn |NV|mulexp10 |NV value|I32 exponent
-#endif
-#endif
-
#if defined(PERL_IN_UTF8_C)
+sR |HV * |new_msg_hv |NN const char * const message \
+ |U32 categories \
+ |U32 flag
sRM |UV |check_locale_boundary_crossing \
|NN const U8* const p \
|const UV result \
|NN U8* const ustrp \
|NN STRLEN *lenp
iR |bool |is_utf8_common |NN const U8 *const p \
- |NN SV **swash \
- |NN const char * const swashname \
|NULLOK SV* const invlist
iR |bool |is_utf8_common_with_len|NN const U8 *const p \
- |NN const U8 *const e \
- |NN SV **swash \
- |NN const char * const swashname \
- |NULLOK SV* const invlist
+ |NN const U8 *const e \
+ |NULLOK SV* const invlist
sR |SV* |swatch_get |NN SV* swash|UV start|UV span
sRM |U8* |swash_scan_list_line|NN U8* l|NN U8* const lend|NN UV* min \
|NN UV* max|NN UV* val|const bool wants_value \
Apmb |void |sv_copypv |NN SV *const dsv|NN SV *const ssv
Apmd |void |sv_copypv_nomg |NN SV *const dsv|NN SV *const ssv
Apd |void |sv_copypv_flags |NN SV *const dsv|NN SV *const ssv|const I32 flags
-Ap |char* |my_atof2 |NN const char *s|NN NV* value
+Apo |char* |my_atof2 |NN const char *orig|NN NV* value
+Ap |char* |my_atof3 |NN const char *orig|NN NV* value|const STRLEN len
Apn |int |my_socketpair |int family|int type|int protocol|int fd[2]
Apn |int |my_dirfd |NULLOK DIR* dir
#ifdef PERL_ANY_COW
#endif
ApdR |SV* |hv_scalar |NN HV *hv
+p |void |hv_pushkv |NN HV *hv|U32 flags
ApdRM |SV* |hv_bucket_ratio|NN HV *hv
ApoR |I32* |hv_riter_p |NN HV *hv
ApoR |HE** |hv_eiter_p |NN HV *hv
XEopMR |STRLEN *|new_warnings_bitfield|NULLOK STRLEN *buffer \
|NN const char *const bits|STRLEN size
-#ifndef SPRINTF_RETURNS_STRLEN
-Apnod |int |my_sprintf |NN char *buffer|NN const char *pat|...
-#endif
-
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
#ifdef USE_QUADMATH
Apnod |Size_t |my_strlcpy |NULLOK char *dst|NULLOK const char *src|Size_t size
#endif
+#ifndef HAS_STRNLEN
+Apnod |Size_t |my_strnlen |NN const char *str|Size_t maxlen
+#endif
+
+#ifndef HAS_MKOSTEMP
+pno |int |my_mkostemp |NN char *templte|int flags
+#endif
+#ifndef HAS_MKSTEMP
+pno |int |my_mkstemp |NN char *templte
+#endif
+
APpdn |bool |isinfnan |NV nv
p |bool |isinfnansv |NN SV *sv