X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/6b976e32dcccdff3dde7682ad9314dc5cd918e17..5411a0e56ca69f51e1eeaf89ee0a73dcbcf05fb9:/embed.fnc diff --git a/embed.fnc b/embed.fnc index 0bdbd93..a85b8a6 100644 --- a/embed.fnc +++ b/embed.fnc @@ -16,7 +16,7 @@ : any doc entry goes in perlapi.pod rather than perlintern.pod. If no : documentation is furnished for this function, and M is also : specified, the function is not listed as part of the public API. -: If M isn't specified and no documentation is furnished, the +: If M isn't specified, and no documentation is furnished, the : function is listed in perlapi as existing and being undocumented : makes '#define foo Perl_foo' scope not just for PERL_CORE/PERL_EXT : @@ -39,7 +39,7 @@ : : proto.h: add __attribute__deprecated__ : -: d Function has documentation in the source: +: d Function has documentation (somewhere) in the source: : : enables 'no docs for foo" warning in autodoc.pl : @@ -48,10 +48,12 @@ : in embed.h, change "#ifdef PERL_CORE" : into "#if defined(PERL_CORE) || defined(PERL_EXT)" : -: Should always be combined with "X" to be usable from dynamically -: loaded extensions. +: To be usable from dynamically loaded extensions, either: +: 1) must be static to its containing file ("i" or "s" flag); or +: 2) be combined with the "X" flag. : -: f Function takes printf style format string, varargs: +: f Function takes printf style format string, varargs (hence any entry that +: would otherwise go in embed.h is suppressed): : : proto.h: add __attribute__format__ (or ...null_ok__) : @@ -218,6 +220,8 @@ Apd |void |av_push |NN AV *av|NN SV *val EXp |void |av_reify |NN AV *av ApdR |SV* |av_shift |NN AV *av Apd |SV** |av_store |NN AV *av|I32 key|NULLOK SV *val +AidR |I32 |av_top_index |NN AV *av +AmpdR |I32 |av_tindex |NN AV *av Apd |void |av_undef |NN AV *av ApdoxM |SV** |av_create_and_unshift_one|NN AV **const avp|NN SV *const val Apd |void |av_unshift |NN AV *av|I32 num @@ -287,7 +291,7 @@ Afnp |int |printf_nocontext|NN const char *format|... p |SV * |core_prototype |NULLOK SV *sv|NN const char *name \ |const int code|NULLOK int * const opnum : Used in gv.c -p |OP * |coresub_op |NN SV *coreargssv|const int code \ +p |OP * |coresub_op |NN SV *const coreargssv|const int code \ |const int opnum : Used in sv.c p |void |cv_ckproto_len_flags |NN const CV* cv|NULLOK const GV* gv\ @@ -296,8 +300,9 @@ p |void |cv_ckproto_len_flags |NN const CV* cv|NULLOK const GV* gv\ : Used in pp.c and pp_sys.c ApdR |SV* |gv_const_sv |NN GV* gv ApdR |SV* |cv_const_sv |NULLOK const CV *const cv +pR |SV* |cv_const_sv_or_av|NULLOK const CV *const cv : Used in pad.c -pR |SV* |op_const_sv |NULLOK const OP* o|NULLOK CV* cv +pR |SV* |op_const_sv |NULLOK const OP* o Apd |void |cv_undef |NN CV* cv p |void |cv_forget_slab |NN CV *cv Ap |void |cx_dump |NN PERL_CONTEXT* cx @@ -319,6 +324,7 @@ Ap |void |debprofdump Ap |I32 |debop |NN const OP* o Ap |I32 |debstack Ap |I32 |debstackptrs +pR |SV * |defelem_target |NN SV *sv|NULLOK MAGIC *mg Anp |char* |delimcpy |NN char* to|NN const char* toend|NN const char* from \ |NN const char* fromend|int delim|NN I32* retlen : Used in op.c, perl.c @@ -423,6 +429,7 @@ p |void |dump_sub_perl |NN const GV* gv|bool justperl Apd |void |fbm_compile |NN SV* sv|U32 flags ApdR |char* |fbm_instr |NN unsigned char* big|NN unsigned char* bigend \ |NN SV* littlestr|U32 flags +p |CV * |find_lexical_cv|PADOFFSET off : Defined in util.c, used only in perl.c p |char* |find_script |NN const char *scriptname|bool dosearch \ |NULLOK const char *const *const search_ext|I32 flags @@ -526,8 +533,8 @@ Ap |void* |hv_common |NULLOK HV *hv|NULLOK SV *keysv \ Ap |void* |hv_common_key_len|NULLOK HV *hv|NN const char *key \ |I32 klen_i32|const int action|NULLOK SV *val \ |const U32 hash -Apod |STRLEN |hv_fill |NN HV const *const hv -Ap |void |hv_free_ent |NN HV *hv|NULLOK HE *entryK +Apod |STRLEN |hv_fill |NN HV *const hv +Ap |void |hv_free_ent |NN HV *hv|NULLOK HE *entry Apd |I32 |hv_iterinit |NN HV *hv ApdR |char* |hv_iterkey |NN HE* entry|NN I32* retlen ApdR |SV* |hv_iterkeysv |NN HE* entry @@ -623,11 +630,13 @@ ADMpPR |bool |is_uni_punct |UV c ADMpPR |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 +iDMPR |bool |isIDFIRST_lazy |NN const char* p +iDMPR |bool |isALNUM_lazy |NN const char* p #ifdef PERL_IN_UTF8_C sR |U8 |to_lower_latin1|const U8 c|NULLOK U8 *p|NULLOK STRLEN *lenp #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 bool flags +EXp |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 @@ -736,8 +745,20 @@ 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) EMsR |char |grok_bslash_c |const char source|const bool utf8|const bool output_warning -EMsR |bool |grok_bslash_o |NN const char* s|NN UV* uv|NN STRLEN* len|NN const char** error_msg|const bool output_warning -EMiR |bool |grok_bslash_x |NN const char* s|NN UV* uv|NN STRLEN* len|NN const char** error_msg|const bool output_warning +EMsR |bool |grok_bslash_o |NN char** s|NN UV* uv \ + |NN const char** error_msg \ + |const bool output_warning \ + |const bool strict \ + |const bool silence_non_portable \ + |const bool utf8 +EMiR |bool |grok_bslash_x |NN char** s|NN UV* uv \ + |NN const char** error_msg \ + |const bool output_warning \ + |const bool strict \ + |const bool silence_non_portable \ + |const bool utf8 +EMsPR |char*|form_short_octal_warning|NN const char * const s \ + |const STRLEN len #endif Apd |UV |grok_hex |NN const char* start|NN STRLEN* len_p|NN I32* flags|NULLOK NV *result Apd |int |grok_number |NN const char *pv|STRLEN len|NULLOK UV *valuep @@ -769,7 +790,13 @@ p |int |magic_getvec |NN SV* sv|NN MAGIC* mg p |int |magic_nextpack |NN SV *sv|NN MAGIC *mg|NN SV *key p |U32 |magic_regdata_cnt|NN SV* sv|NN MAGIC* mg p |int |magic_regdatum_get|NN SV* sv|NN MAGIC* mg +:removing noreturn to silence a warning for this function resulted in no +:change to the interpreter DLL image under VS 2003 -O1 -GL 32 bits +#ifdef _MSC_VER +p |int |magic_regdatum_set|NN SV* sv|NN MAGIC* mg +#else pr |int |magic_regdatum_set|NN SV* sv|NN MAGIC* mg +#endif p |int |magic_set |NN SV* sv|NN MAGIC* mg p |int |magic_setarylen|NN SV* sv|NN MAGIC* mg p |int |magic_cleararylen_p|NN SV* sv|NN MAGIC* mg @@ -794,7 +821,7 @@ p |int |magic_set_all_env|NN SV* sv|NN MAGIC* mg p |U32 |magic_sizepack |NN SV* sv|NN MAGIC* mg p |int |magic_wipepack |NN SV* sv|NN MAGIC* mg pod |SV* |magic_methcall |NN SV *sv|NN const MAGIC *mg \ - |NN const char *meth|U32 flags \ + |NN SV *meth|U32 flags \ |U32 argc|... Ap |void |markstack_grow #if defined(USE_LOCALE_COLLATE) @@ -817,6 +844,8 @@ Apd |int |mg_copy |NN SV *sv|NN SV *nsv|NULLOK const char *key \ pd |void |mg_localize |NN SV* sv|NN SV* nsv|bool setmagic ApdR |MAGIC* |mg_find |NULLOK const SV* sv|int type ApdR |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 |int |mg_get |NN SV* sv @@ -864,11 +893,6 @@ Ap |void |my_setenv |NULLOK const char* nam|NULLOK const char* val Apmb |I32 |my_stat pX |I32 |my_stat_flags |NULLOK const U32 flags Ap |char * |my_strftime |NN const char *fmt|int sec|int min|int hour|int mday|int mon|int year|int wday|int yday|int isdst -#if defined(MYSWAP) -ApPR |short |my_swap |short s -ApPR |long |my_htonl |long l -ApPR |long |my_ntohl |long l -#endif : Used in pp_ctl.c p |void |my_unexec Apa |OP* |newANONLIST |NULLOK OP* o @@ -1064,8 +1088,8 @@ Ap |SV* |regclass_swash |NULLOK const regexp *prog \ |NN const struct regnode *node|bool doinit \ |NULLOK SV **listsvp|NULLOK SV **altsvp #ifdef PERL_IN_REGCOMP_C -EMsR |SV* |_new_invlist_C_array|NN UV* list -: Not used currently: EXMs |bool |_invlistEQ |NN SV* const a|NN SV* const b|bool complement_b +EMsR |SV* |_new_invlist_C_array|NN const UV* const list +: Not used currently: EXMs |bool |_invlistEQ |NN SV* const a|NN SV* const b|const bool complement_b #endif Ap |I32 |pregexec |NN REGEXP * const prog|NN char* stringarg \ |NN char* strend|NN char* strbeg|I32 minend \ @@ -1083,22 +1107,26 @@ Ap |REGEXP*|pregcomp |NN SV * const pattern|const U32 flags p |REGEXP*|re_op_compile |NULLOK SV ** const patternp \ |int pat_count|NULLOK OP *expr \ |NN const regexp_engine* eng \ - |NULLOK REGEXP *VOL old_re \ + |NULLOK REGEXP *old_re \ |NULLOK bool *is_bare_re \ |U32 rx_flags|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|NN char* strpos \ - |NN char* strend|const U32 flags \ +Ap |char* |re_intuit_start|NN REGEXP * const rx \ + |NULLOK SV* sv \ + |NN const char* const strbeg \ + |NN char* strpos \ + |NN char* strend \ + |const U32 flags \ |NULLOK re_scream_pos_data *data Ap |SV* |re_intuit_string|NN REGEXP *const r #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_TOKE_C) -EiPR |I32 |regcurly |NN const char *s +EiPR |I32 |regcurly |NN const char *s \ + |const bool rbrace_must_be_escaped #endif Ap |I32 |regexec_flags |NN REGEXP *const rx|NN char *stringarg \ |NN char *strend|NN char *strbeg|I32 minend \ |NN SV *sv|NULLOK void *data|U32 flags ApR |regnode*|regnext |NULLOK regnode* p - EXp |SV*|reg_named_buff |NN REGEXP * const rx|NULLOK SV * const key \ |NULLOK SV * const value|const U32 flags EXp |SV*|reg_named_buff_iter |NN REGEXP * const rx|NULLOK const SV * const lastkey \ @@ -1335,6 +1363,8 @@ Apd |void |sv_magic |NN SV *const sv|NULLOK SV *const obj|const int how \ Apd |MAGIC *|sv_magicext |NN SV *const sv|NULLOK SV *const obj|const int how \ |NULLOK const MGVTBL *const vtbl|NULLOK const char *const name \ |const I32 namlen +: exported for re.pm +EXp |MAGIC *|sv_magicext_mglob|NN SV *sv ApdbamR |SV* |sv_mortalcopy |NULLOK SV *const oldsv XpaR |SV* |sv_mortalcopy_flags|NULLOK SV *const oldsv|U32 flags ApdR |SV* |sv_newmortal @@ -1344,6 +1374,8 @@ Apd |void |sv_pos_u2b |NULLOK SV *const sv|NN I32 *const offsetp|NULLOK I32 *con Apd |STRLEN |sv_pos_u2b_flags|NN SV *const sv|STRLEN uoffset \ |NULLOK STRLEN *const lenp|U32 flags Apd |void |sv_pos_b2u |NULLOK SV *const sv|NN I32 *const offsetp +Apd |STRLEN |sv_pos_b2u_flags|NN SV *const sv|STRLEN const offset \ + |U32 flags Amdb |char* |sv_pvn_force |NN SV* sv|NULLOK STRLEN* lp Apd |char* |sv_pvutf8n_force|NN SV *const sv|NULLOK STRLEN *const lp Apd |char* |sv_pvbyten_force|NN SV *const sv|NULLOK STRLEN *const lp @@ -1403,17 +1435,15 @@ EsM |void |_append_range_to_invlist |NN SV* const invlist|const UV start|const EiMR |UV* |_invlist_array_init |NN SV* const invlist|const bool will_have_0 EiMR |UV* |invlist_array |NN SV* const invlist EsM |void |invlist_extend |NN SV* const invlist|const UV len -EiMR |UV* |get_invlist_zero_addr |NN SV* invlist EiMR |UV |invlist_max |NN SV* const invlist -EiM |void |invlist_set_len|NN SV* const invlist|const UV len +EiM |void |invlist_set_len|NN SV* const invlist|const UV len|const bool offset EiMR |IV* |get_invlist_previous_index_addr|NN SV* invlist EiMR |IV |invlist_previous_index|NN SV* const invlist EiM |void |invlist_set_previous_index|NN SV* const invlist|const IV index EiM |void |invlist_trim |NN SV* const invlist EiMR |SV* |invlist_clone |NN SV* const invlist EiMR |bool |invlist_is_iterating|NN SV* const invlist -EiMR |UV* |get_invlist_iter_addr |NN SV* invlist -EiMR |UV* |get_invlist_version_id_addr |NN SV* invlist +EiMR |STRLEN*|get_invlist_iter_addr |NN SV* invlist EiM |void |invlist_iterinit|NN SV* invlist EsMR |bool |invlist_iternext|NN SV* invlist|NN UV* start|NN UV* end EiM |void |invlist_iterfinish|NN SV* invlist @@ -1421,9 +1451,13 @@ EiMR |UV |invlist_highest|NN SV* const invlist #endif #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_UTF8_C) EXmM |void |_invlist_intersection |NN SV* const a|NN SV* const b|NN SV** i -EXpM |void |_invlist_intersection_maybe_complement_2nd|NULLOK SV* const a|NN SV* const b|bool complement_b|NN SV** i +EXpM |void |_invlist_intersection_maybe_complement_2nd \ + |NULLOK SV* const a|NN SV* const b \ + |const bool complement_b|NN SV** i EXmM |void |_invlist_union |NULLOK SV* const a|NN SV* const b|NN SV** output -EXpM |void |_invlist_union_maybe_complement_2nd|NULLOK SV* const a|NN SV* const b|bool complement_b|NN SV** output +EXpM |void |_invlist_union_maybe_complement_2nd \ + |NULLOK SV* const a|NN SV* const b \ + |const bool complement_b|NN SV** output EXmM |void |_invlist_subtract|NN SV* const a|NN SV* const b|NN SV** result EXpM |void |_invlist_invert|NN SV* const invlist EXpM |void |_invlist_invert_prop|NN SV* const invlist @@ -1439,7 +1473,7 @@ EXp |SV* |_core_swash_init|NN const char* pkg|NN const char* name \ #endif #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C) || defined(PERL_IN_UTF8_C) EXMpR |SV* |_invlist_contents|NN SV* const invlist -EiMR |UV* |_get_invlist_len_addr |NN SV* invlist +EiMR |bool* |get_invlist_offset_addr|NN SV* invlist EiMR |UV |_invlist_len |NN SV* const invlist EMiR |bool |_invlist_contains_cp|NN SV* const invlist|const UV cp EXpMR |IV |_invlist_search |NN SV* const invlist|const UV cp @@ -1531,7 +1565,7 @@ p |I32 |wait4pid |Pid_t pid|NN int* statusp|int flags p |U32 |parse_unicode_opts|NN const char **popt Ap |U32 |seed : Only used in perl.c -p |void |get_hash_seed |NN unsigned char *seed_buffer +p |void |get_hash_seed |NN unsigned char * const seed_buffer : Used in doio.c, pp_hot.c, pp_sys.c p |void |report_evil_fh |NULLOK const GV *gv : Used in doio.c, pp_hot.c, pp_sys.c @@ -1697,14 +1731,12 @@ Ap |void |ptr_table_store|NN PTR_TBL_t *const tbl|NULLOK const void *const oldsv Ap |void |ptr_table_split|NN PTR_TBL_t *const tbl ApD |void |ptr_table_clear|NULLOK PTR_TBL_t *const tbl Ap |void |ptr_table_free|NULLOK PTR_TBL_t *const tbl -#if defined(USE_ITHREADS) -# if defined(HAVE_INTERP_INTERN) -Ap |void |sys_intern_dup |NN struct interp_intern* src|NN struct interp_intern* dst -# endif -#endif #if defined(HAVE_INTERP_INTERN) Ap |void |sys_intern_clear Ap |void |sys_intern_init +# if defined(USE_ITHREADS) +Ap |void |sys_intern_dup |NN struct interp_intern* src|NN struct interp_intern* dst +# endif #endif AopP |const XOP * |custom_op_xop |NN const OP *o @@ -1745,16 +1777,17 @@ po |SV* |hfree_next_entry |NN HV *hv|NN STRLEN *indexp #endif #if defined(PERL_IN_HV_C) -s |void |hsplit |NN HV *hv +s |void |hsplit |NN HV *hv|STRLEN const oldsize|STRLEN newsize s |void |hfreeentries |NN HV *hv -s |SV* |hv_free_ent_ret|NN HV *hv|NULLOK HE *entryK +s |SV* |hv_free_ent_ret|NN HV *hv|NN HE *entry sa |HE* |new_he sanR |HEK* |save_hek_flags |NN const char *str|I32 len|U32 hash|int flags sn |void |hv_magic_check |NN HV *hv|NN bool *needs_copy|NN bool *needs_store s |void |unshare_hek_or_pvn|NULLOK const HEK* hek|NULLOK const char* str|I32 len|U32 hash sR |HEK* |share_hek_flags|NN const char *str|I32 len|U32 hash|int flags rs |void |hv_notallowed |int flags|NN const char *key|I32 klen|NN const char *msg -sn |struct xpvhv_aux*|hv_auxinit|NN HV *hv +in |U32|ptr_hash|PTRV u +s |struct xpvhv_aux*|hv_auxinit|NN HV *hv sM |SV* |hv_delete_common|NULLOK HV *hv|NULLOK SV *keysv \ |NULLOK const char *key|STRLEN klen|int k_flags|I32 d_flags \ |U32 hash @@ -1762,10 +1795,10 @@ sM |void |clear_placeholders |NN HV *hv|U32 items #endif #if defined(PERL_IN_MG_C) -s |void |save_magic |I32 mgs_ix|NN SV *sv --s |int |magic_methpack |NN SV *sv|NN const MAGIC *mg|NN const char *meth +s |void |save_magic_flags|I32 mgs_ix|NN SV *sv|U32 flags +-s |int |magic_methpack |NN SV *sv|NN const MAGIC *mg|NN SV *meth s |SV* |magic_methcall1|NN SV *sv|NN const MAGIC *mg \ - |NN const char *meth|U32 flags \ + |NN SV *meth|U32 flags \ |int n|NULLOK SV *val s |void |restore_magic |NULLOK const void *p s |void |unwind_handler_stack|NULLOK const void *p @@ -1791,7 +1824,7 @@ s |OP * |dup_attrlist |NN OP *o s |void |apply_attrs |NN HV *stash|NN SV *target|NULLOK OP *attrs s |void |apply_attrs_my |NN HV *stash|NN OP *target|NULLOK OP *attrs|NN OP **imopsp s |void |bad_type_pv |I32 n|NN const char *t|NN const char *name|U32 flags|NN const OP *kid -s |void |bad_type_sv |I32 n|NN const char *t|NN SV *namesv|U32 flags|NN const OP *kid +s |void |bad_type_gv |I32 n|NN const char *t|NN GV *gv|U32 flags|NN const OP *kid s |void |no_bareword_allowed|NN OP *o sR |OP* |no_fh_allowed|NN OP *o sR |OP* |too_few_arguments_sv|NN OP *o|NN SV* namesv|U32 flags @@ -1877,7 +1910,8 @@ sR |const char *|get_num |NN const char *patptr|NN I32 *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 -snR |char * |bytes_to_uni |NN const U8 *start|STRLEN len|NN char *dest +snR |char * |bytes_to_uni |NN const U8 *start|STRLEN len|NN char *dest \ + |const bool needs_swap #endif #if defined(PERL_IN_PP_CTL_C) @@ -1900,7 +1934,7 @@ sR |PerlIO *|check_type_and_open|NN SV *name sR |PerlIO *|doopen_pm |NN SV *name #endif s |SV ** |adjust_stack_on_leave|NN SV **newsp|NN SV **sp|NN SV **mark|I32 gimme|U32 flags -sRn |bool |path_is_absolute|NN const char *name +iRn |bool |path_is_searchable|NN const char *name sR |I32 |run_user_filter|int idx|NN SV *buf_sv|int maxlen sR |PMOP* |make_matcher |NN REGEXP* re sR |bool |matcher_matches_sv|NN PMOP* matcher|NN SV* sv @@ -1934,7 +1968,7 @@ sR |int |dooneliner |NN const char *cmd|NN const char *filename # endif s |SV * |space_join_names_mortal|NN char *const *array #endif -p |OP * |tied_method|NN const char *const methname|NN SV **sp \ +p |OP * |tied_method|NN SV *methname|NN SV **sp \ |NN SV *const sv|NN const MAGIC *const mg \ |const U32 flags|U32 argc|... @@ -1950,14 +1984,24 @@ Es |regnode*|regbranch |NN struct RExC_state_t *pRExC_state \ Es |STRLEN |reguni |NN const struct RExC_state_t *pRExC_state \ |UV uv|NN char *s Es |regnode*|regclass |NN struct RExC_state_t *pRExC_state \ - |NN I32 *flagp|U32 depth|const bool stop_at_1 + |NN I32 *flagp|U32 depth|const bool stop_at_1 \ + |bool allow_multi_fold \ + |const bool silence_non_portable \ + |NULLOK SV** ret_invlist +Es |bool|could_it_be_a_POSIX_class|NN struct RExC_state_t *pRExC_state +Es |regnode*|handle_regex_sets|NN struct RExC_state_t *pRExC_state \ + |NULLOK SV ** return_invlist \ + |NN I32 *flagp|U32 depth \ + |NN char * const oregcomp_parse +Es |void|parse_lparen_question_flags|NN struct RExC_state_t *pRExC_state Es |regnode*|reg_node |NN struct RExC_state_t *pRExC_state|U8 op Es |UV |reg_recode |const char value|NN SV **encp Es |regnode*|regpiece |NN struct RExC_state_t *pRExC_state \ |NN I32 *flagp|U32 depth -Es |bool |grok_bslash_N |NN struct RExC_state_t *pRExC_state \ - |NULLOK regnode** nodep|NULLOK UV *valuep \ - |NN I32 *flagp|U32 depth|bool in_char_class +Es |bool |grok_bslash_N |NN struct RExC_state_t *pRExC_state \ + |NULLOK regnode** nodep|NULLOK UV *valuep \ + |NN I32 *flagp|U32 depth|bool in_char_class \ + |const bool strict Es |void |reginsert |NN struct RExC_state_t *pRExC_state \ |U8 op|NN regnode *opnd|U32 depth Es |void |regtail |NN struct RExC_state_t *pRExC_state \ @@ -1970,6 +2014,8 @@ Es |U32 |join_exact |NN struct RExC_state_t *pRExC_state \ |U32 flags|NULLOK regnode *val|U32 depth EsRn |char * |regwhite |NN struct RExC_state_t *pRExC_state \ |NN char *p +EsRn |char * |regpatws |NN struct RExC_state_t *pRExC_state \ + |NN char *p|const bool recognize_comment Ei |void |alloc_maybe_populate_EXACT|NN struct RExC_state_t *pRExC_state \ |NN regnode *node|NN I32 *flagp|STRLEN len \ |UV code_point @@ -2000,7 +2046,7 @@ EsRn |U32 |add_data |NN struct RExC_state_t *pRExC_state|U32 n \ |NN const char *s rs |void |re_croak2 |NN const char* pat1|NN const char* pat2|... Ei |I32 |regpposixcc |NN struct RExC_state_t *pRExC_state \ - |I32 value|NULLOK SV *free_me + |I32 value|const bool strict Es |I32 |make_trie |NN struct RExC_state_t *pRExC_state \ |NN regnode *startbranch|NN regnode *first \ |NN regnode *last|NN regnode *tail \ @@ -2009,6 +2055,7 @@ Es |void |make_trie_failtable |NN struct RExC_state_t *pRExC_state \ |NN regnode *source|NN regnode *stclass \ |U32 depth # ifdef DEBUGGING +Es |void |regdump_intflags|NULLOK const char *lead| const U32 flags Es |void |regdump_extflags|NULLOK const char *lead| const U32 flags Es |const regnode*|dumpuntil|NN const regexp *r|NN const regnode *start \ |NN const regnode *node \ @@ -2035,8 +2082,10 @@ ERs |bool |isFOO_lc |const U8 classnum|const U8 character ERs |bool |isFOO_utf8_lc |const U8 classnum|NN const U8* character ERs |I32 |regmatch |NN regmatch_info *reginfo|NN char *startpos|NN regnode *prog ERs |I32 |regrepeat |NN regexp *prog|NN char **startposp \ - |NN const regnode *p|I32 max|int depth \ - |bool is_utf8_pat + |NN const regnode *p \ + |NN regmatch_info *const reginfo \ + |I32 max \ + |int depth ERs |I32 |regtry |NN regmatch_info *reginfo|NN char **startposp ERs |bool |reginclass |NULLOK regexp * const prog|NN const regnode * const n|NN const U8 * const p\ |bool const utf8_target @@ -2055,8 +2104,7 @@ ERsn |U8* |reghop4 |NN U8 *s|I32 off|NN const U8 *llim \ ERsn |U8* |reghopmaybe3 |NN U8 *s|I32 off|NN const U8 *lim ERs |char* |find_byclass |NN regexp * prog|NN const regnode *c \ |NN char *s|NN const char *strend \ - |NULLOK regmatch_info *reginfo \ - |bool is_utf_pat + |NULLOK regmatch_info *reginfo Es |void |to_utf8_substr |NN regexp * prog Es |bool |to_byte_substr |NN regexp * prog ERs |I32 |reg_check_named_buff_matched |NN const regexp *rex \ @@ -2153,7 +2201,7 @@ s |void |force_next |I32 type s |char* |force_version |NN char *s|int guessing s |char* |force_strict_version |NN char *s s |char* |force_word |NN char *start|int token|int check_keyword \ - |int allow_pack|int allow_tick + |int allow_pack s |SV* |tokeq |NN SV *sv s |void |readpipe_override| sR |char* |scan_const |NN char *start @@ -2166,14 +2214,15 @@ s |char* |scan_ident |NN char *s|NN const char *send|NN char *dest \ sR |char* |scan_inputsymbol|NN char *start sR |char* |scan_pat |NN char *start|I32 type sR |char* |scan_str |NN char *start|int keep_quoted \ - |int keep_delims|int re_reparse + |int keep_delims|int re_reparse \ + |bool deprecate_escaped_matching sR |char* |scan_subst |NN char *start sR |char* |scan_trans |NN char *start s |char* |scan_word |NN char *s|NN char *dest|STRLEN destlen \ |int allow_package|NN STRLEN *slp s |void |update_debugger_info|NULLOK SV *orig_sv \ |NULLOK const char *const buf|STRLEN len -sR |char* |skipspace |NN char *s +sR |char* |skipspace_flags|NN char *s|U32 flags sR |char* |swallow_bom |NN U8 *s #ifndef PERL_NO_UTF16_FILTER s |I32 |utf16_textfilter|int idx|NN SV *sv|int maxlen @@ -2202,6 +2251,9 @@ so |SV* |new_constant |NULLOK const char *s|STRLEN len \ |STRLEN typelen s |int |deprecate_commaless_var_list 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 # if defined(PERL_CR_FILTER) s |I32 |cr_textfilter |int idx|NULLOK SV *sv|int maxlen s |void |strip_return |NN SV *sv @@ -2211,6 +2263,7 @@ s |int |tokereport |I32 rv|NN const YYSTYPE* lvalp s |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 #if defined(PERL_IN_UNIVERSAL_C) s |bool|isa_lookup |NN HV *stash|NN const char * const name \ @@ -2220,6 +2273,7 @@ s |bool|isa_lookup |NN HV *stash|NN const char * const name \ #if defined(PERL_IN_LOCALE_C) #if defined(USE_LOCALE_NUMERIC) || defined(USE_LOCALE_COLLATE) s |char* |stdize_locale |NN char* locs +s |bool |is_cur_LC_category_utf8|int category #endif #endif @@ -2394,6 +2448,7 @@ ApoR |I32* |hv_riter_p |NN HV *hv ApoR |HE** |hv_eiter_p |NN HV *hv Apo |void |hv_riter_set |NN HV *hv|I32 riter Apo |void |hv_eiter_set |NN HV *hv|NULLOK HE *eiter +Ap |void |hv_rand_set |NN HV *hv|U32 new_xhv_rand Ap |void |hv_name_set |NN HV *hv|NULLOK const char *name|U32 len|U32 flags p |void |hv_ename_add |NN HV *hv|NN const char *name|U32 len \ |U32 flags @@ -2405,7 +2460,7 @@ poM |AV** |hv_backreferences_p |NN HV *hv poM |void |hv_kill_backrefs |NN HV *hv #endif Apd |void |hv_clear_placeholders |NN HV *hv -ApoR |I32* |hv_placeholders_p |NN HV *hv +XpoR |SSize_t*|hv_placeholders_p |NN HV *hv ApoR |I32 |hv_placeholders_get |NN const HV *hv Apo |void |hv_placeholders_set |NN HV *hv|I32 ph @@ -2421,84 +2476,6 @@ sMd |SV* |find_uninit_var|NULLOK const OP *const obase \ |NULLOK const SV *const 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 - -: I think that these are only used by the above, which are macros, and in turn -: currently they are only used in pp_pack.c, but this is in util.c -np |void |my_swabn |NN void* ptr|int n - Ap |GV* |gv_fetchpvn_flags|NN const char* name|STRLEN len|I32 flags|const svtype sv_type Ap |GV* |gv_fetchsv|NN SV *name|I32 flags|const svtype sv_type