X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=embed.fnc;h=d74193ed8f8b0d3e492659b8dcb3a0eabb48f464;hb=0626a780e6ccb4eb0c4c4129aa294a3687905605;hp=90294ba3884da28f0d451c6658cfb69b055730b8;hpb=b0e6ae5b51a7c163ac7cdb0d18b54bb1819f6c13;p=p5sagit%2Fp5-mst-13.2.git diff --git a/embed.fnc b/embed.fnc index 90294ba..d74193e 100644 --- a/embed.fnc +++ b/embed.fnc @@ -129,6 +129,7 @@ ApR |UV |cast_uv |NV f ApR |I32 |my_chsize |int fd|Off_t length #endif pR |OP* |convert |I32 optype|I32 flags|NULLOK OP* o +pM |PERL_CONTEXT* |create_eval_scope|U32 flags : croak()'s first parm can be NULL. Otherwise, mod_perl breaks. Afprd |void |croak |NULLOK const char* pat|... Apr |void |vcroak |NN const char* pat|NULLOK va_list* args @@ -173,6 +174,7 @@ Ap |I32 |debstack Ap |I32 |debstackptrs Ap |char* |delimcpy |NN char* to|NN const char* toend|NN const char* from \ |NN const char* fromend|int delim|NN I32* retlen +pM |void |delete_eval_scope p |void |deprecate |NN const char* s p |void |deprecate_old |NN const char* s Afp |OP* |die |NULLOK const char* pat|... @@ -180,7 +182,7 @@ p |OP* |vdie |NULLOK const char* pat|NULLOK va_list* args p |OP* |die_where |NULLOK const char* message|STRLEN msglen Ap |void |dounwind |I32 cxix pmb |bool |do_aexec |NULLOK SV* really|NN SV** mark|NN SV** sp -p |bool |do_aexec5 |NULLOK SV* really|NN SV** mark|NN SV** sp|int fd|int flag +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 p |void |do_chop |NN SV* asv|NN SV* sv Ap |bool |do_close |NN GV* gv|bool not_implicit @@ -198,7 +200,7 @@ Ap |int |do_spawn |NN char* cmd Ap |int |do_spawn_nowait|NN char* cmd #endif #if !defined(WIN32) -p |bool |do_exec3 |NN const char* cmd|int fd|int flag +p |bool |do_exec3 |NN const char* cmd|int fd|int do_report #endif p |void |do_execfree #if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM) @@ -278,6 +280,7 @@ Ap |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 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|NULLOK const char *name|U32 len|U32 flags Apd |HV* |gv_stashpv |NN const char* name|I32 create Apd |HV* |gv_stashpvn |NN const char* name|U32 namelen|I32 create Apd |HV* |gv_stashsv |NULLOK SV* sv|I32 create @@ -406,7 +409,6 @@ p |int |magic_freeovrld|NN SV* sv|NN MAGIC* mg p |int |magic_get |NN SV* sv|NN MAGIC* mg p |int |magic_getarylen|NN SV* sv|NN const MAGIC* mg p |int |magic_getdefelem|NN SV* sv|NN MAGIC* mg -p |int |magic_getglob |NN SV* sv|NN MAGIC* mg p |int |magic_getnkeys |NN SV* sv|NN MAGIC* mg p |int |magic_getpack |NN SV* sv|NN MAGIC* mg p |int |magic_getpos |NN SV* sv|NN MAGIC* mg @@ -509,7 +511,11 @@ Ap |OP* |newANONSUB |I32 floor|NULLOK OP* proto|NULLOK OP* block Apa |OP* |newASSIGNOP |I32 flags|NULLOK OP* left|I32 optype|NULLOK OP* right Apa |OP* |newCONDOP |I32 flags|NN OP* first|NULLOK OP* trueop|NULLOK OP* falseop Apd |CV* |newCONSTSUB |NULLOK HV* stash|NULLOK const char* name|NULLOK SV* sv +#ifdef PERL_MAD +Ap |OP* |newFORM |I32 floor|NULLOK OP* o|NULLOK OP* block +#else Ap |void |newFORM |I32 floor|NULLOK OP* o|NULLOK OP* block +#endif Apa |OP* |newFOROP |I32 flags|NULLOK char* label|line_t forline \ |NULLOK OP* sv|NN OP* expr|NULLOK OP* block|NULLOK OP* cont Apa |OP* |newGIVENOP |NN OP* cond|NN OP* block|PADOFFSET defsv_off @@ -539,8 +545,8 @@ Apa |OP* |newLISTOP |I32 type|I32 flags|NULLOK OP* first|NULLOK OP* last Apa |OP* |newPADOP |I32 type|I32 flags|NULLOK SV* sv Apa |OP* |newPMOP |I32 type|I32 flags Apa |OP* |newPVOP |I32 type|I32 flags|NULLOK char* pv -Apa |SV* |newRV |NN SV* pref -Apda |SV* |newRV_noinc |NN SV *sv +Apa |SV* |newRV |NN SV* sv +Apda |SV* |newRV_noinc |NN SV* sv Apda |SV* |newSV |STRLEN len Apa |OP* |newSVREF |NN OP* o Apa |OP* |newSVOP |I32 type|I32 flags|NN SV* sv @@ -575,7 +581,11 @@ ApP |char* |ninstr |NN const char* big|NN const char* bigend \ |NN const char* little|NN const char* lend pr |OP* |oopsCV |NN OP* o Ap |void |op_free |NULLOK OP* arg +#ifdef PERL_MAD +p |OP* |package |NN OP* o +#else p |void |package |NN OP* o +#endif pd |PADOFFSET|pad_alloc |I32 optype|U32 tmptype p |PADOFFSET|allocmy |NN char* name pdR |PADOFFSET|pad_findmy |NN const char* name @@ -666,7 +676,7 @@ Apda |char* |savesharedpv |NULLOK const char* pv Apda |char* |savesvpv |NN SV* sv Ap |void |savestack_grow Ap |void |savestack_grow_cnt |I32 need -Ap |void |save_aelem |NN const AV* av|I32 idx|NN SV **sptr +Ap |void |save_aelem |NN AV* av|I32 idx|NN SV **sptr Ap |I32 |save_alloc |I32 size|I32 pad Ap |void |save_aptr |NN AV** aptr Ap |AV* |save_ary |NN GV* gv @@ -734,6 +744,9 @@ p |void |sub_crush_depth|NN CV* cv Apd |bool |sv_2bool |NN SV* sv Apd |CV* |sv_2cv |NULLOK SV* sv|NN HV** st|NN GV** gvp|I32 lref Apd |IO* |sv_2io |NN SV* sv +#ifdef PERL_IN_SV_C +s |char* |glob_2inpuv |NN GV* gv|NULLOK STRLEN *len|bool want_number +#endif Amb |IV |sv_2iv |NN SV* sv Apd |IV |sv_2iv_flags |NN SV* sv|I32 flags Apd |SV* |sv_2mortal |NULLOK SV* sv @@ -856,7 +869,12 @@ Apd |I32 |unpackstring |NN const char *pat|NN const char *patend|NN const char * |NN const char *strend|U32 flags Ap |void |unsharepvn |NULLOK const char* sv|I32 len|U32 hash p |void |unshare_hek |NULLOK HEK* hek +#ifdef PERL_MAD +p |OP * |utilize |int aver|I32 floor|NULLOK OP* version \ + |NN OP* idop|NULLOK OP* arg +#else p |void |utilize |int aver|I32 floor|NULLOK OP* version|NN OP* idop|NULLOK OP* arg +#endif 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 @@ -970,7 +988,12 @@ Apd |SV* |sv_rvweaken |NN SV *sv p |int |magic_killbackrefs|NN SV *sv|NN MAGIC *mg Ap |OP* |newANONATTRSUB |I32 floor|NULLOK OP *proto|NULLOK OP *attrs|NULLOK OP *block Ap |CV* |newATTRSUB |I32 floor|NULLOK OP *o|NULLOK OP *proto|NULLOK OP *attrs|NULLOK OP *block +#ifdef PERL_MAD +Apr |OP * |newMYSUB |I32 floor|NULLOK OP *o|NULLOK OP *proto \ + |NULLOK OP *attrs|NULLOK OP *block +#else Apr |void |newMYSUB |I32 floor|NULLOK OP *o|NULLOK OP *proto|NULLOK OP *attrs|NULLOK OP *block +#endif p |OP * |my_attrs |NN OP *o|NULLOK OP *attrs p |void |boot_core_xsutils #if defined(USE_ITHREADS) @@ -1047,7 +1070,7 @@ 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* sv|I32 len|U32 hash|int flags rs |void |hv_notallowed |int flags|NN const char *key|I32 klen|NN const char *msg -sRn |struct xpvhv_aux*|hv_auxinit|NN HV *hv +sn |struct xpvhv_aux*|hv_auxinit|NN HV *hv sM |SV* |hv_delete_common|NULLOK HV* tb|NULLOK SV* keysv|NULLOK const char* key \ |STRLEN klen|int k_flags|I32 d_flags|U32 hash sM |HE* |hv_fetch_common|NULLOK HV* tb|NULLOK SV* keysv|NULLOK const char* key \ @@ -1126,7 +1149,7 @@ s |void |no_bareword_allowed|NN const OP *o sR |OP* |no_fh_allowed|NN OP *o sR |OP* |too_few_arguments|NN OP *o|NN const char* name sR |OP* |too_many_arguments|NN OP *o|NN const char* name -s |bool |looks_like_bool|NN OP* o +s |bool |looks_like_bool|NN const OP* o s |OP* |newGIVWHENOP |NULLOK OP* cond|NN OP *block \ |I32 enter_opcode|I32 leave_opcode \ |PADOFFSET entertarg @@ -1235,6 +1258,7 @@ s |int |emulate_eaccess|NN const char* path|Mode_t mode # if !defined(HAS_MKDIR) || !defined(HAS_RMDIR) sR |int |dooneliner |NN const char *cmd|NN const char *filename # endif +s |SV * |space_join_names_mortal|NN char *const *array #endif #if defined(PERL_IN_REGCOMP_C) || defined(PERL_DECL_PROT) @@ -1282,7 +1306,6 @@ Es |I32 |make_trie |NN struct RExC_state_t* state|NN regnode *startbranch \ #if defined(PERL_IN_REGEXEC_C) || defined(PERL_DECL_PROT) ERs |I32 |regmatch |NN regnode *prog ERs |I32 |regrepeat |NN const regnode *p|I32 max -ERs |I32 |regrepeat_hard |NN regnode *p|I32 max|NN I32 *lp ERs |I32 |regtry |NN regexp *prog|NN char *startpos ERs |bool |reginclass |NN const regnode *n|NN const U8 *p|NULLOK STRLEN *lenp\ |bool do_utf8sv_is_utf8 @@ -1333,24 +1356,31 @@ s |int |sv_2iuv_non_preserve |NN SV *sv|I32 numtype # endif sR |I32 |expect_number |NN char** pattern # -s |bool |utf8_mg_pos |NN SV *sv|NN MAGIC **mgp|NN STRLEN **cachep \ - |I32 i|NN I32 *offsetp|I32 uoff \ - |NN const U8 **sp|NN const U8 *start \ - |NN const U8 *send -s |bool |utf8_mg_pos_init |NN SV *sv|NN MAGIC **mgp \ - |NN STRLEN **cachep|I32 i|I32 offsetp \ - |NN const U8 *s|NN const U8 *start +s |STRLEN |sv_pos_u2b_forwards|NN const U8 *const start \ + |NN const U8 *const send|STRLEN uoffset +s |STRLEN |sv_pos_u2b_midway|NN const U8 *const start \ + |NN const U8 *const send|STRLEN uoffset|STRLEN uend +s |STRLEN |sv_pos_u2b_cached|NN SV *sv|NN MAGIC **mgp \ + |NN const U8 *const start|NN const U8 *const send \ + |STRLEN uoffset|STRLEN uoffset0|STRLEN boffset0 +s |void |utf8_mg_pos_cache_update|NN SV *sv|NN MAGIC **mgp \ + |STRLEN byte|STRLEN utf8|STRLEN blen +s |STRLEN |sv_pos_b2u_forwards|NN const U8 *s|NN const U8 *const target +s |STRLEN |sv_pos_b2u_midway|NN const U8 *s|NN const U8 *const target \ + |NN const U8 *end|STRLEN endu s |char * |stringify_regexp|NN SV *sv|NN MAGIC *mg|NULLOK STRLEN *lp sn |char * |F0convert |NV nv|NN char *endbuf|NN STRLEN *len # if defined(PERL_OLD_COPY_ON_WRITE) sM |void |sv_release_COW |NN SV *sv|NN const char *pvx|STRLEN len|NN SV *after # endif s |SV * |more_sv -s |void * |more_bodies |size_t size|svtype sv_type +s |void * |more_bodies |svtype sv_type s |bool |sv_2iuv_common |NN SV *sv s |void |glob_assign_glob|NN SV *dstr|NN SV *sstr|const int dtype s |void |glob_assign_ref|NN SV *dstr|NN SV *sstr +# if defined(USE_ITHREADS) sRn |PTR_TBL_ENT_t *|ptr_table_find|NN PTR_TBL_t *tbl|NN const void *sv +# endif s |SV * |find_hash_subscript|NULLOK HV *hv|NN SV *val s |I32 |find_array_subscript|NULLOK AV *av|NN SV *val s |SV * |find_uninit_var|NULLOK OP *obase|NULLOK SV *uninit_sv|bool match @@ -1378,7 +1408,8 @@ s |char* |scan_word |NN char *s|NN char *dest|STRLEN destlen \ |int allow_package|NN STRLEN *slp sR |char* |skipspace |NN char *s sR |char* |swallow_bom |NN U8 *s -s |void |checkcomma |NN char *s|NN const char *name|NN const char *what +s |void |checkcomma |NN const char *s|NN const char *name \ + |NN const char *what s |bool |feature_is_enabled|NN char* name|STRLEN namelen s |void |force_ident |NN const char *s|int kind s |void |incline |NN char *s @@ -1408,7 +1439,7 @@ s |int |tokereport |I32 rv #endif #if defined(PERL_IN_UNIVERSAL_C) || defined(PERL_DECL_PROT) -s |SV*|isa_lookup |NULLOK HV *stash|NN const char *name|NULLOK HV *name_stash|int len|int level +s |bool|isa_lookup |NULLOK HV *stash|NN const char *name|NULLOK HV *name_stash|int len|int level #endif #if defined(PERL_IN_LOCALE_C) || defined(PERL_DECL_PROT) @@ -1522,7 +1553,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_name_set |NN HV* hv|NULLOK const char *name|I32 len|int flags +Ap |void |hv_name_set |NN HV* hv|NULLOK const char *name|U32 len|U32 flags poM |AV** |hv_backreferences_p |NN HV* hv #if defined(PERL_IN_DUMP_C) || defined(PERL_IN_HV_C) || defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT) poM |void |hv_kill_backrefs |NN HV* hv @@ -1641,6 +1672,54 @@ px |void |my_clearenv Apo |void* |my_cxt_init |NN int *index|size_t size #endif +#ifdef PERL_MAD +Mnp |void |pad_peg |NN const char* s +#if defined(PERL_IN_DUMP_C) || defined(PERL_DECL_PROT) +sf |void |xmldump_attr |I32 level|NN PerlIO *file|NN const char* pat \ + |... +#endif +Mfp |void |xmldump_indent |I32 level|NN PerlIO *file|NN const char* pat \ + |... +Mp |void |xmldump_vindent|I32 level|NN PerlIO *file|NN const char* pat \ + |NULLOK va_list *args +Mp |void |xmldump_all +Mp |void |xmldump_packsubs |NN const HV* stash +Mp |void |xmldump_sub |NN const GV* gv +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 char *pv|STRLEN len|int utf8 +Mp |char* |sv_xmlpeek |NN SV* sv +Mp |void |do_pmop_xmldump|I32 level|NN PerlIO *file \ + |NULLOK const PMOP *pm +Mp |void |pmop_xmldump |NULLOK const PMOP* pm +Mp |void |do_op_xmldump |I32 level|NN PerlIO *file|NULLOK const OP *o +Mp |void |op_xmldump |NN const OP* arg + +Mp |TOKEN* |newTOKEN |I32 optype|YYSTYPE lval \ + |NULLOK MADPROP* madprop +Mp |void |token_free |NN TOKEN* arg +Mp |void |token_getmad |NN TOKEN* arg|NULLOK OP* o|char slot +Mp |void |op_getmad_weak |NULLOK OP* from|NULLOK OP* o|char slot +Mp |void |op_getmad |NULLOK OP* from|NULLOK OP* o|char slot +Mp |void |prepend_madprops|NULLOK MADPROP* mp|NULLOK OP* o|char slot +Mp |void |append_madprops|NULLOK MADPROP* tm|NULLOK OP* o|char slot +Mp |void |addmad |NULLOK MADPROP* tm|NULLOK MADPROP** root \ + |char slot +Mp |MADPROP*|newMADsv |char key|NN SV* sv +Mp |MADPROP*|newMADPROP |char key|char type|NULLOK void* val|I32 vlen +Mp |void |mad_free |NULLOK MADPROP* mp + +# if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT) +s |char* |skipspace0 |NN char *s +s |char* |skipspace1 |NN char *s +s |char* |skipspace2 |NN char *s|NULLOK SV **sv +s |void |start_force |int where +s |void |curmad |char slot|NULLOK SV *sv +# endif +Mp |int |madlex +Mp |int |madparse +#endif END_EXTERN_C /*