X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/a4e744802906bbf8435494e7f5ab1823213b2448..b7247a80ab6b02ec8a01b2c7c8d927ad173700ea:/embed.fnc diff --git a/embed.fnc b/embed.fnc index 070d68b..1543017 100644 --- a/embed.fnc +++ b/embed.fnc @@ -1,6 +1,6 @@ -: BEGIN {die "You meant to run embed.pl"} # Stop early if fed to perl. +: BEGIN{die "You meant to run regen/embed.pl"} # Stop early if fed to perl. : -: This file is processed by embed.pl and autodoc.pl +: This file is processed by regen/embed.pl and autodoc.pl : : Lines are of the form: : flags|return_type|function_name|arg1|arg2|...|argN @@ -168,19 +168,15 @@ npR |MEM_SIZE|malloc_good_size |size_t nbytes AnpR |void* |get_context Anp |void |set_context |NN void *t -END_EXTERN_C - -/* functions with flag 'n' should come before here */ -START_EXTERN_C 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 |int |Gv_AMupdate |NN HV* stash|bool destructing ApR |CV* |gv_handler |NULLOK HV* stash|I32 id -: Used in perly.y -p |OP* |append_elem |I32 optype|NULLOK OP* first|NULLOK OP* last -: Used in perly.y -p |OP* |append_list |I32 optype|NULLOK LISTOP* first|NULLOK LISTOP* last +Apd |OP* |op_append_elem |I32 optype|NULLOK OP* first|NULLOK OP* last +Apd |OP* |op_append_list |I32 optype|NULLOK OP* first|NULLOK OP* last +Apd |OP* |op_linklist |NN OP *o +Apd |OP* |op_prepend_elem|I32 optype|NULLOK OP* first|NULLOK OP* last : FIXME - this is only called by pp_chown. They should be merged. p |I32 |apply |I32 type|NN SV** mark|NN SV** sp ApM |void |apply_attrs_string|NN const char *stashpv|NN CV *cv|NN const char *attrstr|STRLEN len @@ -233,11 +229,6 @@ ApR |I32 |my_chsize |int fd|Off_t length #endif : Used in perly.y pR |OP* |convert |I32 optype|I32 flags|NULLOK OP* o -Apd |HV* |cop_hints_2hv |NN const COP *cop -Apd |SV* |cop_hints_fetchpvn|NN const COP *cop|NN const char *key \ - |STRLEN klen|int flags|U32 hash -Amd |SV* |cop_hints_fetchpvs|NN const COP *cop|NN const char *const key -Amd |SV* |cop_hints_fetchsv|NN const COP *cop|NN SV *keysv|U32 hash : Used in op.c and perl.c pM |PERL_CONTEXT* |create_eval_scope|U32 flags Aprd |void |croak_sv |NN SV *baseex @@ -482,26 +473,30 @@ ApMdR |HE* |hv_iternext_flags|NN HV *hv|I32 flags ApdR |SV* |hv_iterval |NN HV *hv|NN HE *entry Ap |void |hv_ksplit |NN HV *hv|IV newmax Apdbm |void |hv_magic |NN HV *hv|NULLOK GV *gv|int how -: Used in B.xs -XEdpoM |HV * |refcounted_he_chain_2hv|NULLOK const struct refcounted_he *c -: Used in APItest.xs -XEpoM |SV * |refcounted_he_fetch|NULLOK const struct refcounted_he *chain \ - |NULLOK SV *keysv|NULLOK const char *key \ - |STRLEN klen, int flags, U32 hash -: Used in various files -dpoM |void |refcounted_he_free|NULLOK struct refcounted_he *he -: Used in various files -XEdpoM |struct refcounted_he *|refcounted_he_new \ - |NULLOK struct refcounted_he *const parent \ - |NULLOK SV *const key|NULLOK SV *const value #if defined(PERL_IN_HV_C) -s |struct refcounted_he * |refcounted_he_new_common \ - |NULLOK struct refcounted_he *const parent \ - |NN const char *const key_p \ - |const STRLEN key_len|const char flags \ - |char value_type|NN const void *value \ - |const STRLEN value_len -#endif +s |SV * |refcounted_he_value |NN const struct refcounted_he *he +#endif +Xpd |HV * |refcounted_he_chain_2hv|NULLOK const struct refcounted_he *c|U32 flags +Xpd |SV * |refcounted_he_fetch_pvn|NULLOK const struct refcounted_he *chain \ + |NN const char *keypv|STRLEN keylen|U32 hash|U32 flags +Xpd |SV * |refcounted_he_fetch_pv|NULLOK const struct refcounted_he *chain \ + |NN const char *key|U32 hash|U32 flags +Xpd |SV * |refcounted_he_fetch_sv|NULLOK const struct refcounted_he *chain \ + |NN SV *key|U32 hash|U32 flags +Xpd |struct refcounted_he *|refcounted_he_new_pvn \ + |NULLOK struct refcounted_he *parent \ + |NN const char *keypv|STRLEN keylen \ + |U32 hash|NULLOK SV *value|U32 flags +Xpd |struct refcounted_he *|refcounted_he_new_pv \ + |NULLOK struct refcounted_he *parent \ + |NN const char *key \ + |U32 hash|NULLOK SV *value|U32 flags +Xpd |struct refcounted_he *|refcounted_he_new_sv \ + |NULLOK struct refcounted_he *parent \ + |NN SV *key \ + |U32 hash|NULLOK SV *value|U32 flags +Xpd |void |refcounted_he_free|NULLOK struct refcounted_he *he +Xpd |struct refcounted_he *|refcounted_he_inc|NULLOK struct refcounted_he *he Abmd |SV** |hv_store |NULLOK HV *hv|NULLOK const char *key \ |I32 klen|NULLOK SV *val|U32 hash Abmd |HE* |hv_store_ent |NULLOK HV *hv|NULLOK SV *key|NULLOK SV *val\ @@ -613,14 +608,12 @@ s |OP* |opt_scalarhv |NN OP* rep_op s |OP* |is_inplace_av |NN OP* o|NULLOK OP* oright #endif Ap |void |leave_scope |I32 base -: Used in pp_ctl.c, and by Data::Alias -EXp |void |lex_end -: Used in various files -p |void |lex_start |NULLOK SV* line|NULLOK PerlIO *rsfp|bool new_filter : Public lexer API +AMpd |void |lex_start |NULLOK SV* line|NULLOK PerlIO *rsfp|U32 flags AMpd |bool |lex_bufutf8 AMpd |char* |lex_grow_linestr|STRLEN len AMpd |void |lex_stuff_pvn |NN const char* pv|STRLEN len|U32 flags +AMpd |void |lex_stuff_pv |NN const char* pv|U32 flags AMpd |void |lex_stuff_sv |NN SV* sv|U32 flags AMpd |void |lex_unstuff |NN char* ptr AMpd |void |lex_read_to |NN char* ptr @@ -630,7 +623,9 @@ 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_block |U32 flags AMpd |OP* |parse_fullstmt |U32 flags +AMpd |OP* |parse_stmtseq |U32 flags : Used in various files Ap |void |op_null |NN OP* o : FIXME. Used by Data::Alias @@ -638,7 +633,6 @@ EXp |void |op_clear |NN OP* o Ap |void |op_refcnt_lock Ap |void |op_refcnt_unlock #if defined(PERL_IN_OP_C) -s |OP* |linklist |NN OP *o s |OP* |listkids |NULLOK OP* o #endif : Used in S_doeval in pp_ctl.c @@ -728,6 +722,7 @@ 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 Apd |int |mg_free |NN SV* sv +Apd |void |mg_free_type |NN SV* sv|int how Apd |int |mg_get |NN SV* sv Apd |U32 |mg_length |NN SV* sv Apd |void |mg_magical |NN SV* sv @@ -833,6 +828,7 @@ Apda |SV* |newSVpvn |NULLOK const char *const s|const STRLEN len Apda |SV* |newSVpvn_flags |NULLOK const char *const s|const STRLEN len|const U32 flags Apda |SV* |newSVhek |NULLOK const HEK *const hek Apda |SV* |newSVpvn_share |NULLOK const char* s|I32 len|U32 hash +Apda |SV* |newSVpv_share |NULLOK const char* s|U32 hash Afpda |SV* |newSVpvf |NN const char *const pat|... Apa |SV* |vnewSVpvf |NN const char *const pat|NULLOK va_list *const args Apd |SV* |newSVrv |NN SV *const rv|NULLOK const char *const classname @@ -843,6 +839,12 @@ Apda |OP* |newWHENOP |NULLOK OP* cond|NN OP* block Apda |OP* |newWHILEOP |I32 flags|I32 debuggable|NULLOK LOOP* loop \ |I32 whileline|NULLOK OP* expr|NULLOK OP* block|NULLOK OP* cont \ |I32 has_my +Apd |CV* |rv2cv_op_cv |NN OP *cvop|U32 flags +Apd |OP* |ck_entersub_args_list|NN OP *entersubop +Apd |OP* |ck_entersub_args_proto|NN OP *entersubop|NN GV *namegv|NN SV *protosv +Apd |OP* |ck_entersub_args_proto_or_list|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_set_call_checker|NN CV *cv|NN Perl_call_checker ckfun|NN SV *ckobj Apa |PERL_SI*|new_stackinfo|I32 stitems|I32 cxitems Ap |char* |scan_vstring |NN const char *s|NN const char *const e \ |NN SV *sv @@ -852,7 +854,7 @@ Apd |const char* |prescan_version |NN const char *s\ |NULLOK int *ssaw_decimal|NULLOK int *swidth|NULLOK bool *salpha Apd |SV* |new_version |NN SV *ver Apd |SV* |upg_version |NN SV *ver|bool qv -Apd |bool |vverify |NN SV *vs +Apd |SV* |vverify |NN SV *vs Apd |SV* |vnumify |NN SV *vs Apd |SV* |vnormal |NN SV *vs Apd |SV* |vstringify |NN SV *vs @@ -944,8 +946,6 @@ p |OP* |pmruntime |NN OP *o|NN OP *expr|bool isreg s |OP* |pmtrans |NN OP* o|NN OP* expr|NN OP* repl #endif Ap |void |pop_scope -: Used in perly.y -p |OP* |prepend_elem |I32 optype|NULLOK OP* head|NULLOK OP* tail Ap |void |push_scope Amb |OP* |ref |NULLOK OP* o|I32 type #if defined(PERL_IN_OP_C) @@ -1024,6 +1024,7 @@ Apda |char* |savepv |NULLOK const char* pv Apda |char* |savepvn |NULLOK const char* pv|I32 len Apda |char* |savesharedpv |NULLOK const char* pv Apda |char* |savesharedpvn |NN const char *const pv|const STRLEN len +Apda |char* |savesharedsvpv |NN SV *sv Apda |char* |savesvpv |NN SV* sv Ap |void |savestack_grow Ap |void |savestack_grow_cnt |I32 need @@ -1041,7 +1042,7 @@ Ap |void |save_destructor|DESTRUCTORFUNC_NOCONTEXT_t f|NN void* p Ap |void |save_destructor_x|DESTRUCTORFUNC_t f|NULLOK void* p Apmb |void |save_freesv |NULLOK SV* sv : Used in SAVEFREOP(), used in op.c, pp_ctl.c -pmb |void |save_freeop |NULLOK OP* o +Apmb |void |save_freeop |NULLOK OP* o Apmb |void |save_freepv |NULLOK char* pv Ap |void |save_generic_svref|NN SV** sptr Ap |void |save_generic_pvref|NN char** str @@ -1063,7 +1064,7 @@ Ap |void |save_long |NN long* longp Apmb |void |save_mortalizesv|NN SV* sv Ap |void |save_nogv |NN GV* gv : Used in SAVEFREOP(), used in gv.c, op.c, perl.c, pp_ctl.c, pp_sort.c -pmb |void |save_op +Apmb |void |save_op Ap |SV* |save_scalar |NN GV* gv Ap |void |save_pptr |NN char** pptr Ap |void |save_vptr |NN void *ptr @@ -1073,9 +1074,9 @@ Ap |void |save_sptr |NN SV** sptr Ap |SV* |save_svref |NN SV** sptr Ap |void |save_pushptr |NULLOK void *const ptr|const int type : Used by SAVECOPARYBASE() in op.c -p |void |save_pushi32ptr|const I32 i|NULLOK void *const ptr|const int type +Ap |void |save_pushi32ptr|const I32 i|NULLOK void *const ptr|const int type : Used by SAVESWITCHSTACK() in pp.c -p |void |save_pushptrptr|NULLOK void *const ptr1 \ +Ap |void |save_pushptrptr|NULLOK void *const ptr1 \ |NULLOK void *const ptr2|const int type #if defined(PERL_IN_SCOPE_C) s |void |save_pushptri32ptr|NULLOK void *const ptr1|const I32 i \ @@ -1083,6 +1084,7 @@ s |void |save_pushptri32ptr|NULLOK void *const ptr1|const I32 i \ #endif : Used in perly.y p |OP* |sawparens |NULLOK OP* o +Apd |OP* |op_contextualize|NN OP* o|I32 context : Used in perly.y p |OP* |scalar |NULLOK OP* o #if defined(PERL_IN_OP_C) @@ -1158,7 +1160,7 @@ Apd |void |sv_chop |NN SV *const sv|NULLOK const char *const ptr pd |I32 |sv_clean_all : Used only in perl.c pd |void |sv_clean_objs -Apd |void |sv_clear |NN SV *const sv +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 @@ -1494,8 +1496,6 @@ Adpb |void |sv_nounlocking |NULLOK SV *sv #endif Adp |int |nothreadhook -END_EXTERN_C - #if defined(PERL_IN_DOOP_C) sR |I32 |do_trans_simple |NN SV * const sv sR |I32 |do_trans_count |NN SV * const sv @@ -1507,7 +1507,7 @@ sR |I32 |do_trans_complex_utf8 |NN SV * const sv #if defined(PERL_IN_GV_C) s |void |gv_init_sv |NN GV *gv|const svtype sv_type -s |void |gv_magicalize_isa |NN GV *gv|NN const char *nambeg|I32 add +s |void |gv_magicalize_isa |NN GV *gv s |void |gv_magicalize_overload |NN GV *gv s |HV* |gv_get_super_pkg|NN const char* name|I32 namelen s |HV* |require_tie_mod|NN GV *gv|NN const char *varpv|NN SV* namesv \ @@ -1528,7 +1528,6 @@ 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 sM |void |clear_placeholders |NN HV *hv|U32 items -sM |SV * |refcounted_he_value |NN const struct refcounted_he *he #endif #if defined(PERL_IN_MG_C) @@ -1858,7 +1857,6 @@ s |int |sv_2iuv_non_preserve |NN SV *const sv # endif # endif sR |I32 |expect_number |NN char **const pattern -# sn |STRLEN |sv_pos_u2b_forwards|NN const U8 *const start \ |NN const U8 *const send|NN STRLEN *const uoffset \ |NN bool *const at_end @@ -1989,11 +1987,11 @@ sR |bool |is_utf8_common |NN const U8 *const p|NN SV **swash|NN const char * con sR |SV* |swash_get |NN SV* swash|UV start|UV span #endif -START_EXTERN_C - Apd |void |sv_setsv_flags |NN SV *dstr|NULLOK SV *sstr|const I32 flags Apd |void |sv_catpvn_flags|NN SV *const dstr|NN const char *sstr|const STRLEN len \ |const I32 flags +Apd |void |sv_catpv_flags |NN SV *dstr|NN const char *sstr \ + |const I32 flags Apd |void |sv_catsv_flags |NN SV *const dsv|NULLOK SV *const ssv|const I32 flags Apmd |STRLEN |sv_utf8_upgrade_flags|NN SV *const sv|const I32 flags Ap |STRLEN |sv_utf8_upgrade_flags_grow|NN SV *const sv|const I32 flags|STRLEN extra @@ -2256,6 +2254,15 @@ Apo |void* |my_cxt_init |NN int *index|size_t size #endif #endif +: This function is an implementation detail. The public API for this is +: XS_VERSION_BOOTCHECK +Xpo |void |xs_version_bootcheck|U32 items|U32 ax|NN const char *xs_p \ + |STRLEN xs_len +: This function is an implementation detail. The public API for this is +: XS_APIVERSION_BOOTCHECK +Xpo |void |xs_apiversion_bootcheck|NN SV *module|NN const char *api_p \ + |STRLEN api_len + #ifndef HAS_STRLCAT Apno |Size_t |my_strlcat |NULLOK char *dst|NULLOK const char *src|Size_t size #endif @@ -2284,6 +2291,7 @@ Mp |void |xmldump_form |NN const GV* gv Mp |void |xmldump_eval Mp |char* |sv_catxmlsv |NN SV *dsv|NN SV *ssv Mp |char* |sv_catxmlpvn |NN SV *dsv|NN const char *pv|STRLEN len|int utf8 +Mp |char* |sv_catxmlpv |NN SV *dsv|NN const char *pv|int utf8 Mp |char* |sv_xmlpeek |NN SV* sv Mp |void |do_pmop_xmldump|I32 level|NN PerlIO *file \ |NULLOK const PMOP *pm @@ -2345,8 +2353,10 @@ Apd |AV* |mro_get_linear_isa|NN HV* stash sd |AV* |mro_get_linear_isa_dfs|NN HV* stash|U32 level #endif : Used in hv.c, mg.c, pp.c, sv.c -pd |void |mro_isa_changed_in|NN HV* stash +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 Apd |void |mro_method_changed_in |NN HV* stash +pdx |void |mro_package_moved |NULLOK HV * const stash|NULLOK const HV * const oldstash|NULLOK const GV * const gv|NULLOK const char *newname|I32 newname_len : Only used in perl.c p |void |boot_core_mro Apon |void |sys_init |NN int* argc|NN char*** argv @@ -2370,6 +2380,8 @@ Aanop |CLONE_PARAMS *|clone_params_new|NN PerlInterpreter *const from \ |NN PerlInterpreter *const to Anop |void |clone_params_del|NN CLONE_PARAMS *param #endif -/* - * ex: set ts=8 sts=4 sw=4 noet: - */ + +: Used in perl.c and toke.c +op |void |populate_isa |NN const char *name|STRLEN len|... + +: ex: set ts=8 sts=4 sw=4 noet: