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
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
#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
#endif
Ap |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 */)
ADMpR |bool |is_uni_punct_lc|UV c
ADMpPR |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
+AniR |unsigned int|_variant_byte_number|PERL_UINTMAX_T word
+#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
AnpdD |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
+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
+ |NN const U8 *s|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
ADMpR |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
+#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
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
-EXnpo |char* |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
+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
+p |char* |my_strerror |const int errnum
Xpn |void |_warn_problematic_locale
-p |void |new_numeric |NULLOK const char* newcoll
-Xp |void |set_numeric_local
+Xp |void |set_numeric_underlying
Xp |void |set_numeric_standard
-ApM |bool |_is_in_locale_category|const bool compiling|const int category
-Apd |void |sync_locale
+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 \
|NN SV **beglist|NN SV **endlist|NN SV ***next_in_list|U32 flags
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
#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
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)
#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 \
+Apd |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
|STRLEN curlen \
|NULLOK STRLEN *retlen \
|const U32 flags
-Adp |UV |utf8n_to_uvchr_error|NN const U8 *s \
+Adop |UV |utf8n_to_uvchr_error|NN const U8 *s \
|STRLEN curlen \
|NULLOK STRLEN *retlen \
|const U32 flags \
|NULLOK U32 * errors
+AMdp |UV |utf8n_to_uvchr_msgs|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
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 \
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)
|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|...
|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 \
#if defined(PERL_IN_REGEXEC_C)
ERs |bool |isFOO_utf8_lc |const U8 classnum|NN const U8* character
+ERns |char * |find_next_ascii|NN char* s|NN const char * send|const bool is_utf8
+ERns |char * |find_next_non_ascii|NN char* s|NN const char * send|const bool is_utf8
+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 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)
+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
+# 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
s |void |new_collate |NULLOK const char* newcoll
s |void |new_ctype |NN const char* newctype
-s |void |set_numeric_radix
-#ifdef WIN32
-s |char* |my_setlocale |int category|NULLOK const char* locale
-#endif
-# ifdef DEBUGGING
+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 \
snR |char * |setlocale_debug_string |const int category \
|NULLOK const char* const locale \
|NULLOK const char* const retval
-# endif
+# 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))
ApM |bool |_is_cur_LC_category_utf8|int category
#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 \
#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