X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/8359b381d0e4b7d1489abafb919f3c2a465401a4..98df743aa286b8ac6160b72feb1c2fadf7320d98:/embed.fnc diff --git a/embed.fnc b/embed.fnc index 43d2a17..ed1cd71 100644 --- a/embed.fnc +++ b/embed.fnc @@ -171,6 +171,7 @@ Anp |void |set_context |NN void *t XEop |bool |try_amagic_bin |int method|int flags XEop |bool |try_amagic_un |int method|int flags Ap |SV* |amagic_call |NN SV* left|NN SV* right|int method|int dir +Ap |SV * |amagic_deref_call|NN SV *ref|int method Ap |int |Gv_AMupdate |NN HV* stash|bool destructing ApR |CV* |gv_handler |NULLOK HV* stash|I32 id Apd |OP* |op_append_elem |I32 optype|NULLOK OP* first|NULLOK OP* last @@ -438,6 +439,7 @@ Ap |void |gv_fullname4 |NN SV* sv|NN const GV* gv|NULLOK const char* prefix|bool : Used in scope.c pMox |GP * |newGP |NN GV *const gv pX |void |cvgv_set |NN CV* cv|NULLOK GV* gv +pX |void |cvstash_set |NN CV* cv|NULLOK HV* stash Ap |void |gv_init |NN GV* gv|NULLOK HV* stash|NN const char* name|STRLEN len|int multi Ap |void |gv_name_set |NN GV* gv|NN const char *name|U32 len|U32 flags XMpd |void |gv_try_downgrade|NN GV* gv @@ -503,7 +505,8 @@ Abmd |HE* |hv_store_ent |NULLOK HV *hv|NULLOK SV *key|NULLOK SV *val\ |U32 hash AbmM |SV** |hv_store_flags |NULLOK HV *hv|NULLOK const char *key \ |I32 klen|NULLOK SV *val|U32 hash|int flags -Apd |void |hv_undef |NULLOK HV *hv +Amd |void |hv_undef |NULLOK HV *hv +poX |void |hv_undef_flags |NULLOK HV *hv|U32 flags Am |I32 |ibcmp |NN const char* a|NN const char* b|I32 len AnpP |I32 |foldEQ |NN const char* a|NN const char* b|I32 len Am |I32 |ibcmp_locale |NN const char* a|NN const char* b|I32 len @@ -514,6 +517,7 @@ Am |I32 |ibcmp_utf8 |NN const char *s1|NULLOK char **pe1|UV l1 \ Apd |I32 |foldEQ_utf8 |NN const char *s1|NULLOK char **pe1|UV l1 \ |bool u1|NN const char *s2|NULLOK char **pe2 \ |UV l2|bool u2 +AnpP |I32 |foldEQ_latin1 |NN const char* a|NN const char* b|I32 len #if defined(PERL_IN_DOIO_C) sR |bool |ingroup |Gid_t testgid|bool effective #endif @@ -623,8 +627,13 @@ AMpd |I32 |lex_peek_unichar|U32 flags AMpd |I32 |lex_read_unichar|U32 flags AMpd |void |lex_read_space |U32 flags : Public parser API +AMpd |OP* |parse_arithexpr|U32 flags +AMpd |OP* |parse_termexpr |U32 flags +AMpd |OP* |parse_listexpr |U32 flags +AMpd |OP* |parse_fullexpr |U32 flags AMpd |OP* |parse_block |U32 flags AMpd |OP* |parse_barestmt |U32 flags +AMpd |SV* |parse_label |U32 flags AMpd |OP* |parse_fullstmt |U32 flags AMpd |OP* |parse_stmtseq |U32 flags : Used in various files @@ -722,6 +731,7 @@ Apd |int |mg_copy |NN SV *sv|NN SV *nsv|NULLOK const char *key \ : Defined in mg.c, used only in scope.c 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 Apd |int |mg_free |NN SV* sv Apd |void |mg_free_type |NN SV* sv|int how Apd |int |mg_get |NN SV* sv @@ -730,7 +740,8 @@ Apd |void |mg_magical |NN SV* sv Apd |int |mg_set |NN SV* sv Ap |I32 |mg_size |NN SV* sv Ap |void |mini_mktime |NN struct tm *ptm -: Used by MOD(), which Data::Alias uses +AMpd |OP* |op_lvalue |NULLOK OP* o|I32 type +: To be removed after 5.14 (see [perl #78908]): EXp |OP* |mod |NULLOK OP* o|I32 type : Used in op.c and pp_sys.c p |int |mode_from_discipline|NULLOK const char* s|STRLEN len @@ -792,7 +803,8 @@ Ap |void |newPROG |NN OP* o Apda |OP* |newRANGE |I32 flags|NN OP* left|NN OP* right Apda |OP* |newSLICEOP |I32 flags|NULLOK OP* subscript|NULLOK OP* listop Apda |OP* |newSTATEOP |I32 flags|NULLOK char* label|NULLOK OP* o -Ap |CV* |newSUB |I32 floor|NULLOK OP* o|NULLOK OP* proto|NULLOK OP* block +Abm |CV* |newSUB |I32 floor|NULLOK OP* o|NULLOK OP* proto \ + |NULLOK OP* block ApM |CV * |newXS_flags |NULLOK const char *name|NN XSUBADDR_t subaddr\ |NN const char *const filename \ |NULLOK const char *const proto|U32 flags @@ -1097,8 +1109,7 @@ Apd |NV |scan_bin |NN const char* start|STRLEN len|NN STRLEN* retlen Apd |NV |scan_hex |NN const char* start|STRLEN len|NN STRLEN* retlen Ap |char* |scan_num |NN const char* s|NN YYSTYPE *lvalp Apd |NV |scan_oct |NN const char* start|STRLEN len|NN STRLEN* retlen -: Used in perly.y -p |OP* |scope |NULLOK OP* o +AMpd |OP* |op_scope |NULLOK OP* o Ap |char* |screaminstr |NN SV *bigstr|NN SV *littlestr|I32 start_shift \ |I32 end_shift|NN I32 *old_posp|I32 last Apd |void |setdefout |NULLOK GV* gv @@ -1161,15 +1172,22 @@ pd |I32 |sv_clean_all : Used only in perl.c pd |void |sv_clean_objs Apd |void |sv_clear |NN SV *const orig_sv -Apd |I32 |sv_cmp |NULLOK SV *const sv1|NULLOK SV *const sv2 -Apd |I32 |sv_cmp_flags |NULLOK SV *const sv1|NULLOK SV *const sv2|const I32 flags -Apd |I32 |sv_cmp_locale |NULLOK SV *const sv1|NULLOK SV *const sv2 -Apd |I32 |sv_cmp_locale_flags |NULLOK SV *const sv1|NULLOK SV *const sv2|const I32 flags +Aopd |I32 |sv_cmp |NULLOK SV *const sv1|NULLOK SV *const sv2 +Apd |I32 |sv_cmp_flags |NULLOK SV *const sv1|NULLOK SV *const sv2 \ + |const U32 flags +Aopd |I32 |sv_cmp_locale |NULLOK SV *const sv1|NULLOK SV *const sv2 +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 Apd |char* |sv_collxfrm_flags |NN SV *const sv|NN STRLEN *const nxp|I32 const flags #endif -Ap |OP* |sv_compile_2op |NN SV *sv|NN OP **startop \ +: Frustratingly, because regcomp.c is also compiled as ext/re/re_comp.c, +: anything it needs has to be exported. So this has to be X. I'd rather it +: wasn't. +Xpo |OP* |sv_compile_2op_is_broken|NN SV *sv|NN OP **startop \ + |NN const char *code|NN PAD **padp +ApD |OP* |sv_compile_2op |NN SV *sv|NN OP **startop \ |NN const char *code|NN PAD **padp Apd |int |getcwd_sv |NN SV* sv Apd |void |sv_dec |NULLOK SV *const sv @@ -1178,7 +1196,7 @@ Ap |void |sv_dump |NN SV* sv ApdR |bool |sv_derived_from|NN SV* sv|NN const char *const name ApdR |bool |sv_does |NN SV* sv|NN const char *const name Amd |I32 |sv_eq |NULLOK SV* sv1|NULLOK SV* sv2 -Apd |I32 |sv_eq_flags |NULLOK SV* sv1|NULLOK SV* sv2|const I32 flags +Apd |I32 |sv_eq_flags |NULLOK SV* sv1|NULLOK SV* sv2|const U32 flags Apd |void |sv_free |NULLOK SV *const sv : FIXME Used in SvREFCNT_dec() but only : if defined(__GNUC__) && !defined(PERL_GCC_BRACE_GROUPS_FORBIDDEN) @@ -1240,6 +1258,7 @@ Amdb |void |sv_setsv |NN SV *dstr|NULLOK SV *sstr Amdb |void |sv_taint |NN SV* sv ApdR |bool |sv_tainted |NN SV *const sv Apd |int |sv_unmagic |NN SV *const sv|const int type +Apd |int |sv_unmagicext |NN SV *const sv|const int type|NULLOK MGVTBL *vtbl Apdmb |void |sv_unref |NN SV* sv Apd |void |sv_unref_flags |NN SV *const ref|const U32 flags Apd |void |sv_untaint |NN SV *const sv @@ -1256,6 +1275,7 @@ Apd |void |sv_vsetpvfn |NN SV *const sv|NN const char *const pat|const STRLEN pa ApR |NV |str_to_version |NN SV *sv Ap |SV* |swash_init |NN const char* pkg|NN const char* name|NN SV* listsv|I32 minbits|I32 none Ap |UV |swash_fetch |NN SV *swash|NN const U8 *ptr|bool do_utf8 +EMpRX |HV* |_swash_inversion_hash |NN SV *swash Ap |void |taint_env Ap |void |taint_proper |NULLOK const char* f|NN const char *const s Apd |UV |to_utf8_case |NN const U8 *p|NN U8* ustrp|NULLOK STRLEN *lenp \ @@ -1288,6 +1308,8 @@ AdpPR |STRLEN |utf8_length |NN const U8* s|NN const U8 *e ApdPR |IV |utf8_distance |NN const U8 *a|NN const U8 *b ApdPR |U8* |utf8_hop |NN const U8 *s|I32 off ApMd |U8* |utf8_to_bytes |NN U8 *s|NN STRLEN *len +Apd |int |bytes_cmp_utf8 |NN const U8 *b|STRLEN blen|NN const U8 *u \ + |STRLEN ulen ApMd |U8* |bytes_from_utf8|NN const U8 *s|NN STRLEN *len|NULLOK bool *is_utf8 ApMd |U8* |bytes_to_utf8 |NN const U8 *s|NN STRLEN *len Apd |UV |utf8_to_uvchr |NN const U8 *s|NULLOK STRLEN *retlen @@ -1449,7 +1471,7 @@ ApR |HEK* |hek_dup |NULLOK HEK* e|NN CLONE_PARAMS* param Ap |void |re_dup_guts |NN const REGEXP *sstr|NN REGEXP *dstr \ |NN CLONE_PARAMS* param Ap |PerlIO*|fp_dup |NULLOK PerlIO *const fp|const char type|NN CLONE_PARAMS *const param -ApR |DIR* |dirp_dup |NULLOK DIR *const dp +ApR |DIR* |dirp_dup |NULLOK DIR *const dp|NN CLONE_PARAMS *const param ApR |GP* |gp_dup |NULLOK GP *const gp|NN CLONE_PARAMS *const param ApR |MAGIC* |mg_dup |NULLOK MAGIC *mg|NN CLONE_PARAMS *const param #if defined(PERL_IN_SV_C) @@ -1483,8 +1505,11 @@ Ap |void |sys_intern_clear Ap |void |sys_intern_init #endif +AopP |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 +Aop |void |custom_op_register |NN Perl_ppaddr_t ppaddr \ + |NN const XOP *xop Adp |void |sv_nosharing |NULLOK SV *sv Adpbm |void |sv_nolocking |NULLOK SV *sv @@ -1537,7 +1562,7 @@ s |SV* |magic_methcall1|NN SV *sv|NN const MAGIC *mg \ |NN const char *meth|U32 flags \ |int n|NULLOK SV *val s |void |restore_magic |NULLOK const void *p -s |void |unwind_handler_stack|NN const void *p +s |void |unwind_handler_stack|NULLOK const void *p #endif @@ -1659,9 +1684,9 @@ sR |I32 |dopoptosub_at |NN const PERL_CONTEXT* cxstk|I32 startingblock sR |I32 |dopoptowhen |I32 startingblock s |void |save_lines |NULLOK AV *array|NN SV *sv s |bool |doeval |int gimme|NULLOK OP** startop|NULLOK CV* outside|U32 seq -sR |PerlIO *|check_type_and_open|NN const char *name +sR |PerlIO *|check_type_and_open|NN SV *name #ifndef PERL_DISABLE_PMC -sR |PerlIO *|doopen_pm |NN const char *name|const STRLEN namelen +sR |PerlIO *|doopen_pm |NN SV *name #endif sRn |bool |path_is_absolute|NN const char *name sR |I32 |run_user_filter|int idx|NN SV *buf_sv|int maxlen @@ -1790,8 +1815,8 @@ Es |U8 |regtail_study |NN struct RExC_state_t *pRExC_state \ ERs |I32 |regmatch |NN regmatch_info *reginfo|NN regnode *prog ERs |I32 |regrepeat |NN const regexp *prog|NN const regnode *p|I32 max|int depth ERs |I32 |regtry |NN regmatch_info *reginfo|NN char **startpos -ERs |bool |reginclass |NULLOK const regexp *prog|NN const regnode *n|NN const U8 *p|NULLOK STRLEN *lenp\ - |bool do_utf8sv_is_utf8 +ERs |bool |reginclass |NULLOK const regexp * const prog|NN const regnode * const n|NN const U8 * const p|NULLOK STRLEN *lenp\ + |bool const do_utf8sv_is_utf8 Es |CHECKPOINT|regcppush |I32 parenfloor Es |char* |regcppop |NN const regexp *rex ERsn |U8* |reghop3 |NN U8 *s|I32 off|NN const U8 *lim @@ -1953,7 +1978,6 @@ s |void |printbuf |NN const char *const fmt|NN const char *const s #if defined(PERL_IN_UNIVERSAL_C) s |bool|isa_lookup |NN HV *stash|NN const char * const name -so |HV * |get_isa_hash |NN HV *const stash #endif #if defined(PERL_IN_LOCALE_C) @@ -2048,8 +2072,6 @@ s |void |deb_stack_n |NN SV** stack_base|I32 stack_min \ : Used in perl.c, pp_ctl.c, toke.c pda |PADLIST*|pad_new |int flags : Only used in op.c -pd |void |pad_undef |NN CV* cv -: Only used in op.c Mpd |PADOFFSET|pad_add_name |NN const char *name|const STRLEN len\ |const U32 flags|NULLOK HV *typestash\ |NULLOK HV *ourstash @@ -2110,8 +2132,10 @@ 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_name_set |NN HV *hv|NULLOK const char *name|U32 len|U32 flags -p |void |hv_name_add |NN HV *hv|NN const char *name|U32 len -p |void |hv_name_delete |NN HV *hv|NN const char *name|U32 len +p |void |hv_ename_add |NN HV *hv|NN const char *name|U32 len \ + |U32 flags +p |void |hv_ename_delete|NN HV *hv|NN const char *name|U32 len \ + |U32 flags : Used in dump.c and hv.c poM |AV** |hv_backreferences_p |NN HV *hv #if defined(PERL_IN_DUMP_C) || defined(PERL_IN_HV_C) || defined(PERL_IN_SV_C) @@ -2353,12 +2377,20 @@ p |struct mro_meta* |mro_meta_dup |NN struct mro_meta* smeta|NN CLONE_PARAMS* pa Apd |AV* |mro_get_linear_isa|NN HV* stash #if defined(PERL_IN_MRO_C) sd |AV* |mro_get_linear_isa_dfs|NN HV* stash|U32 level +s |void |mro_clean_isarev|NN HV * const isa \ + |NN const char * const name \ + |const STRLEN len \ + |NULLOK HV * const exceptions +s |void |mro_gather_and_rename|NN HV * const stashes \ + |NN HV * const seen_stashes \ + |NULLOK HV *stash \ + |NULLOK HV *oldstash \ + |NN SV *namesv #endif : Used in hv.c, mg.c, pp.c, sv.c -md |void |mro_isa_changed_in|NN HV* stash -pd |void |mro_isa_changed_in3|NULLOK HV* stash|NULLOK const char *stashname|STRLEN stashname_len +pd |void |mro_isa_changed_in|NN HV* stash Apd |void |mro_method_changed_in |NN HV* stash -pdx |void |mro_package_moved |NULLOK HV * const stash|NULLOK HV * const oldstash|NULLOK const GV *gv|NULLOK const char *newname|I32 newname_len +pdx |void |mro_package_moved |NULLOK HV * const stash|NULLOK HV * const oldstash|NN const GV * const gv|U32 flags : Only used in perl.c p |void |boot_core_mro Apon |void |sys_init |NN int* argc|NN char*** argv