X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=embed.fnc;h=9a6dfe595758742c7a5a1e4c88b9826acf1f96cc;hb=5de3775cb1f5ef0af0777e63f1032a2b570b9dd9;hp=fbd6ec735a5cea6a42aa19fc87b98127310e70eb;hpb=4a2f5338264180fd813d06be7103d99c38d44e54;p=p5sagit%2Fp5-mst-13.2.git diff --git a/embed.fnc b/embed.fnc index fbd6ec7..9a6dfe5 100644 --- a/embed.fnc +++ b/embed.fnc @@ -1,3 +1,5 @@ +: BEGIN {die "You meant to run embed.pl"} # Stop early if fed to perl. +: : Lines are of the form: : flags|return_type|function_name|arg1|arg2|...|argN : @@ -38,9 +40,6 @@ : which is ambiguous. : : Individual flags may be separated by whitespace. -: -: New global functions should be added at the end for binary compatibility -: in some configurations. START_EXTERN_C @@ -115,6 +114,10 @@ Apd |void |av_undef |NN AV* ar ApdoxM |SV** |av_create_and_unshift_one|NN AV **const avp|NN SV *const val Apd |void |av_unshift |NN AV* ar|I32 num Apo |SV** |av_arylen_p |NN AV* av +Apo |IV* |av_iter_p |NN AV* av +#if defined(PERL_IN_AV_C) || defined(PERL_DECL_PROT) +s |MAGIC* |get_aux_mg |NN AV *av +#endif pR |OP* |bind_match |I32 type|NN OP* left|NN OP* pat pR |OP* |block_end |I32 floor|NULLOK OP* seq ApR |I32 |block_gimme @@ -180,8 +183,8 @@ 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 +p |void |deprecate |NN const char *const s +p |void |deprecate_old |NN const char *const s Afp |OP* |die |NULLOK const char* pat|... p |OP* |vdie |NULLOK const char* pat|NULLOK va_list* args p |OP* |die_where |NULLOK const char* message|STRLEN msglen @@ -229,7 +232,6 @@ Ap |bool |do_open9 |NN GV *gv|NN const char *name|I32 len|int as_raw \ Ap |bool |do_openn |NN GV *gv|NN const char *name|I32 len|int as_raw \ |int rawmode|int rawperm|NULLOK PerlIO *supplied_fp \ |NULLOK SV **svp|I32 num -p |void |do_pipe |NN SV* sv|NULLOK GV* rgv|NULLOK GV* wgv p |bool |do_print |NULLOK SV* sv|NN PerlIO* fp pR |OP* |do_readline p |I32 |do_chomp |NN SV* sv @@ -299,12 +301,20 @@ Apd |HV* |gv_stashsv |NULLOK SV* sv|I32 flags Apd |void |hv_clear |NULLOK HV* tb poM |HV * |hv_copy_hints_hv|NN HV *const ohv Ap |void |hv_delayfree_ent|NN HV* hv|NULLOK HE* entry -Apd |SV* |hv_delete |NULLOK HV* tb|NN const char* key|I32 klen|I32 flags -Apd |SV* |hv_delete_ent |NULLOK HV* tb|NN SV* key|I32 flags|U32 hash -ApdR |bool |hv_exists |NULLOK HV* tb|NN const char* key|I32 klen -ApdR |bool |hv_exists_ent |NULLOK HV* tb|NN SV* key|U32 hash -Apd |SV** |hv_fetch |NULLOK HV* tb|NN const char* key|I32 klen|I32 lval -Apd |HE* |hv_fetch_ent |NULLOK HV* tb|NN SV* key|I32 lval|U32 hash +Abmd |SV* |hv_delete |NULLOK HV* tb|NN const char* key|I32 klen \ + |I32 flags +Abmd |SV* |hv_delete_ent |NULLOK HV* tb|NN SV* key|I32 flags|U32 hash +AbmdR |bool |hv_exists |NULLOK HV* tb|NN const char* key|I32 klen +AbmdR |bool |hv_exists_ent |NULLOK HV* tb|NN SV* key|U32 hash +Abmd |SV** |hv_fetch |NULLOK HV* tb|NN const char* key|I32 klen \ + |I32 lval +Abmd |HE* |hv_fetch_ent |NULLOK HV* tb|NN SV* key|I32 lval|U32 hash +Ap |void* |hv_common |NULLOK HV* tb|NULLOK SV* keysv \ + |NULLOK const char* key|STRLEN klen|int flags \ + |int action|NULLOK SV* val|U32 hash +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 Ap |void |hv_free_ent |NN HV* hv|NULLOK HE* entryK Apd |I32 |hv_iterinit |NN HV* tb ApdR |char* |hv_iterkey |NN HE* entry|NN I32* retlen @@ -323,11 +333,11 @@ dpoM |void |refcounted_he_free|NULLOK struct refcounted_he *he XEdpoM |struct refcounted_he *|refcounted_he_new \ |NULLOK struct refcounted_he *const parent \ |NULLOK SV *const key|NULLOK SV *const value -Apd |SV** |hv_store |NULLOK HV* tb|NULLOK const char* key|I32 klen|NULLOK SV* val \ - |U32 hash -Apd |HE* |hv_store_ent |NULLOK HV* tb|NULLOK SV* key|NULLOK SV* val|U32 hash -ApM |SV** |hv_store_flags |NULLOK HV* tb|NULLOK const char* key|I32 klen|NULLOK SV* val \ - |U32 hash|int flags +Abmd |SV** |hv_store |NULLOK HV* tb|NULLOK const char* key \ + |I32 klen|NULLOK SV* val|U32 hash +Abmd |HE* |hv_store_ent |NULLOK HV* tb|NULLOK SV* key|NULLOK SV* val|U32 hash +AbmdM |SV** |hv_store_flags |NULLOK HV* tb|NULLOK const char* key \ + |I32 klen|NULLOK SV* val|U32 hash|int flags Apd |void |hv_undef |NULLOK HV* tb ApP |I32 |ibcmp |NN const char* a|NN const char* b|I32 len ApP |I32 |ibcmp_locale |NN const char* a|NN const char* b|I32 len @@ -414,7 +424,7 @@ p |OP* |listkids |NULLOK OP* o Apd |void |load_module|U32 flags|NN SV* name|NULLOK SV* ver|... Ap |void |vload_module|U32 flags|NN SV* name|NULLOK SV* ver|NULLOK va_list* args p |OP* |localize |NN OP* arg|I32 lexical -ApdR |I32 |looks_like_number|NN SV* sv +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 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 @@ -423,10 +433,10 @@ Apd |UV |grok_oct |NN const char* start|NN STRLEN* len_p|NN I32* flags|NULLOK NV p |int |magic_clearenv |NN SV* sv|NN MAGIC* mg p |int |magic_clear_all_env|NN SV* sv|NN MAGIC* mg dp |int |magic_clearhint|NN SV* sv|NN MAGIC* mg +p |int |magic_clearisa |NN SV* sv|NN MAGIC* mg p |int |magic_clearpack|NN SV* sv|NN MAGIC* mg p |int |magic_clearsig |NN SV* sv|NN MAGIC* mg p |int |magic_existspack|NN SV* sv|NN const MAGIC* mg -p |int |magic_freeregexp|NN SV* sv|NN MAGIC* mg 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 @@ -448,14 +458,11 @@ p |int |magic_set |NN SV* sv|NN MAGIC* mg p |int |magic_setamagic|NN SV* sv|NN MAGIC* mg p |int |magic_setarylen|NN SV* sv|NN MAGIC* mg p |int |magic_freearylen_p|NN SV* sv|NN MAGIC* mg -p |int |magic_setbm |NN SV* sv|NN MAGIC* mg p |int |magic_setdbline|NN SV* sv|NN MAGIC* mg p |int |magic_setdefelem|NN SV* sv|NN MAGIC* mg p |int |magic_setenv |NN SV* sv|NN MAGIC* mg -p |int |magic_setfm |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 -p |int |magic_setglob |NN SV* sv|NN MAGIC* mg p |int |magic_setmglob |NN SV* sv|NN MAGIC* mg p |int |magic_setnkeys |NN SV* sv|NN MAGIC* mg p |int |magic_setpack |NN SV* sv|NN MAGIC* mg @@ -494,7 +501,7 @@ Ap |I32 |mg_size |NN SV* sv Ap |void |mini_mktime |NN struct tm *pm EXp |OP* |mod |NULLOK OP* o|I32 type p |int |mode_from_discipline|NULLOK SV* discp -Ap |char* |moreswitches |NN char* s +Ap |const char* |moreswitches |NN const char* s p |OP* |my |NN OP* o Ap |NV |my_atof |NN const char *s #if (!defined(HAS_MEMCPY) && !defined(HAS_BCOPY)) || (!defined(HAS_MEMMOVE) && !defined(HAS_SAFE_MEMCPY) && !defined(HAS_SAFE_BCOPY)) @@ -518,7 +525,7 @@ Anp |void* |my_memset |NN char* loc|I32 ch|I32 len #endif Ap |I32 |my_pclose |NULLOK PerlIO* ptr Ap |PerlIO*|my_popen |NN const char* cmd|NN const char* mode -Ap |PerlIO*|my_popen_list |NN char* mode|int n|NN SV ** args +Ap |PerlIO*|my_popen_list |NN const char* mode|int n|NN SV ** args Ap |void |my_setenv |NULLOK const char* nam|NULLOK const char* val Ap |I32 |my_stat 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 @@ -556,7 +563,7 @@ ApM |CV * |newXS_flags |NULLOK const char *name|NN XSUBADDR_t subaddr\ |NN const char *const filename \ |NULLOK const char *const proto|U32 flags Apd |CV* |newXS |NULLOK const char* name|NN XSUBADDR_t f|NN const char* filename -Apda |AV* |newAV +AmdbR |AV* |newAV Apa |OP* |newAVREF |NN OP* o Apa |OP* |newBINOP |I32 type|I32 flags|NULLOK OP* first|NULLOK OP* last Apa |OP* |newCVREF |I32 flags|NULLOK OP* o @@ -564,7 +571,7 @@ Apa |OP* |newGVOP |I32 type|I32 flags|NN GV* gv Apa |GV* |newGVgen |NN const char* pack Apa |OP* |newGVREF |I32 type|NULLOK OP* o ApaR |OP* |newHVREF |NN OP* o -ApdaR |HV* |newHV +AmdbR |HV* |newHV ApaR |HV* |newHVhv |NULLOK HV* hv Apa |IO* |newIO Apa |OP* |newLISTOP |I32 type|I32 flags|NULLOK OP* first|NULLOK OP* last @@ -583,6 +590,7 @@ Apda |SV* |newSVuv |UV u Apda |SV* |newSVnv |NV n Apda |SV* |newSVpv |NULLOK const char* s|STRLEN len Apda |SV* |newSVpvn |NULLOK const char* s|STRLEN len +Apda |SV* |newSVpvn_flags |NULLOK const char* s|STRLEN len|U32 flags Apda |SV* |newSVhek |NULLOK const HEK *hek Apda |SV* |newSVpvn_share |NULLOK const char* s|I32 len|U32 hash Afpda |SV* |newSVpvf |NN const char* pat|... @@ -596,7 +604,7 @@ Apa |OP* |newWHILEOP |I32 flags|I32 debuggable|NULLOK LOOP* loop \ |I32 whileline|NULLOK OP* expr|NULLOK OP* block|NULLOK OP* cont \ |I32 has_my Apa |PERL_SI*|new_stackinfo|I32 stitems|I32 cxitems -Ap |char* |scan_vstring |NN const char *vstr|NN const char *end|NN SV *sv +Ap |char* |scan_vstring |NN const char *vstr|NN const char *const end|NN SV *sv Apd |const char* |scan_version |NN const char *vstr|NN SV *sv|bool qv Apd |SV* |new_version |NN SV *ver Apd |SV* |upg_version |NN SV *ver|bool qv @@ -638,7 +646,7 @@ Ap |void |call_atexit |ATEXIT_t fn|NULLOK void *ptr Apd |I32 |call_argv |NN const char* sub_name|I32 flags|NN char** argv Apd |I32 |call_method |NN const char* methname|I32 flags Apd |I32 |call_pv |NN const char* sub_name|I32 flags -Apd |I32 |call_sv |NN SV* sv|I32 flags +Apd |I32 |call_sv |NN SV* sv|VOL I32 flags Ap |void |despatch_signals Ap |OP * |doref |NN OP *o|I32 type|bool set_op_ref Apd |SV* |eval_pv |NN const char* p|I32 croak_on_error @@ -672,19 +680,20 @@ Ap |void |push_scope Amb |OP* |ref |NULLOK OP* o|I32 type p |OP* |refkids |NULLOK OP* o|I32 type Ap |void |regdump |NN const regexp* r +Ap |void |regdump |NN const regexp* r Ap |SV* |regclass_swash |NULLOK const regexp *prog|NN const struct regnode *n|bool doinit|NULLOK SV **listsvp|NULLOK SV **altsvp Ap |I32 |pregexec |NN REGEXP * const prog|NN char* stringarg \ |NN char* strend|NN char* strbeg|I32 minend \ |NN SV* screamer|U32 nosave -Ap |void |pregfree |NULLOK struct regexp* r -EXp |struct regexp* |reg_temp_copy |NN struct regexp* r +Ap |void |pregfree |NULLOK REGEXP* r +Ap |void |pregfree2 |NN REGEXP* prog +EXp |REGEXP*|reg_temp_copy |NN REGEXP* r Ap |void |regfree_internal|NULLOK REGEXP * const r -Ap |char * |reg_stringify |NN MAGIC *mg|NULLOK STRLEN *lp|NULLOK U32 *flags|NULLOK I32 *haseval #if defined(USE_ITHREADS) Ap |void* |regdupe_internal|NN REGEXP * const r|NN CLONE_PARAMS* param #endif Ap |REGEXP*|pregcomp |NN const SV * const pattern|const U32 flags -Ap |REGEXP*|re_compile |NN const SV * const pattern|const U32 flags +Ap |REGEXP*|re_compile |NN const SV * const pattern|U32 flags Ap |char* |re_intuit_start|NN REGEXP * const rx|NULLOK SV* sv|NN char* strpos \ |NN char* strend|const U32 flags \ |NULLOK re_scream_pos_data *data @@ -750,7 +759,6 @@ Ap |void |save_shared_pvref|NN char** str Ap |void |save_gp |NN GV* gv|I32 empty Ap |HV* |save_hash |NN GV* gv Ap |void |save_helem |NN HV* hv|NN SV *key|NN SV **sptr -Apr |void |save_hints Ap |void |save_hptr |NN HV** hptr Ap |void |save_I16 |NN I16* intp Ap |void |save_I32 |NN I32* intp @@ -767,7 +775,7 @@ Ap |SV* |save_scalar |NN GV* gv Ap |void |save_pptr |NN char** pptr Ap |void |save_vptr |NN void* pptr Ap |void |save_re_context -Ap |void |save_padsv |PADOFFSET off +Ap |void |save_padsv_and_mortalize|PADOFFSET off Ap |void |save_sptr |NN SV** sptr Ap |SV* |save_svref |NN SV** sptr p |OP* |sawparens |NULLOK OP* o @@ -788,8 +796,8 @@ p |I32 |setenv_getix |NN const char* nam EXp |void |setdefout |NULLOK GV* gv Ap |HEK* |share_hek |NN const char* str|I32 len|U32 hash #if defined(HAS_SIGACTION) && defined(SA_SIGINFO) -np |Signal_t |sighandler |int sig|... -Anp |Signal_t |csighandler |int sig|... +np |Signal_t |sighandler |int sig|NULLOK siginfo_t *info|NULLOK void *uap +Anp |Signal_t |csighandler |int sig|NULLOK siginfo_t *info|NULLOK void *uap #else np |Signal_t |sighandler |int sig Anp |Signal_t |csighandler |int sig @@ -805,16 +813,17 @@ s |bool |glob_2number |NN GV* const gv s |char* |glob_2pv |NN GV* const gv|NULLOK STRLEN * const len #endif Amb |IV |sv_2iv |NN SV* sv -Apd |IV |sv_2iv_flags |NN SV* sv|I32 flags +Apd |IV |sv_2iv_flags |NN SV *const sv|const I32 flags Apd |SV* |sv_2mortal |NULLOK SV* sv -Apd |NV |sv_2nv |NN SV* sv +Apd |NV |sv_2nv |NN SV *const sv +pMd |SV* |sv_2num |NN SV *const sv Amb |char* |sv_2pv |NN SV* sv|NULLOK STRLEN* lp -Apd |char* |sv_2pv_flags |NN SV* sv|NULLOK STRLEN* lp|I32 flags +Apd |char* |sv_2pv_flags |NN SV *const sv|NULLOK STRLEN *const lp|const I32 flags Apd |char* |sv_2pvutf8 |NN SV* sv|NULLOK STRLEN* lp -Apd |char* |sv_2pvbyte |NN SV* sv|NULLOK STRLEN* lp +Apd |char* |sv_2pvbyte |NN SV *const sv|NULLOK STRLEN *const lp Ap |char* |sv_pvn_nomg |NN SV* sv|NULLOK STRLEN* lp Amb |UV |sv_2uv |NN SV* sv -Apd |UV |sv_2uv_flags |NN SV* sv|I32 flags +Apd |UV |sv_2uv_flags |NN SV *const sv|const I32 flags Apd |IV |sv_iv |NN SV* sv Apd |UV |sv_uv |NN SV* sv Apd |NV |sv_nv |NN SV* sv @@ -822,8 +831,8 @@ Apd |char* |sv_pvn |NN SV *sv|NN STRLEN *len Apd |char* |sv_pvutf8n |NN SV *sv|NN STRLEN *len Apd |char* |sv_pvbyten |NN SV *sv|NN STRLEN *len Apd |I32 |sv_true |NULLOK SV *sv -pd |void |sv_add_arena |NN char* ptr|U32 size|U32 flags -Apd |int |sv_backoff |NN SV* sv +pd |void |sv_add_arena |NN char *const ptr|const U32 size|const U32 flags +Apd |int |sv_backoff |NN SV *const sv Apd |SV* |sv_bless |NN SV* sv|NN HV* stash Afpd |void |sv_catpvf |NN SV* sv|NN const char* pat|... Apd |void |sv_vcatpvf |NN SV* sv|NN const char* pat|NULLOK va_list* args @@ -843,14 +852,14 @@ Ap |OP* |sv_compile_2op |NN SV* sv|NN OP** startp|NN const char* code|NN PAD** p Apd |int |getcwd_sv |NN SV* sv Apd |void |sv_dec |NN SV* sv Ap |void |sv_dump |NN SV* sv -ApdR |bool |sv_derived_from|NN SV* sv|NN const char* name -ApdR |bool |sv_does |NN SV* sv|NN const char* name +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 Apd |I32 |sv_eq |NULLOK SV* sv1|NULLOK SV* sv2 Apd |void |sv_free |NULLOK SV* sv poMX |void |sv_free2 |NN SV* sv pd |void |sv_free_arenas Apd |char* |sv_gets |NN SV* sv|NN PerlIO* fp|I32 append -Apd |char* |sv_grow |NN SV* sv|STRLEN newlen +Apd |char* |sv_grow |NN SV *const sv|STRLEN newlen Apd |void |sv_inc |NN SV* sv Apd |void |sv_insert |NN SV* bigsv|STRLEN offset|STRLEN len \ |NN const char* little|STRLEN littlelen @@ -880,10 +889,10 @@ Apd |void |sv_report_used Apd |void |sv_reset |NN const char* s|NULLOK HV* stash Afpd |void |sv_setpvf |NN SV* sv|NN const char* pat|... Apd |void |sv_vsetpvf |NN SV* sv|NN const char* pat|NULLOK va_list* args -Apd |void |sv_setiv |NN SV* sv|IV num +Apd |void |sv_setiv |NN SV *const sv|const IV num Apdb |void |sv_setpviv |NN SV* sv|IV num -Apd |void |sv_setuv |NN SV* sv|UV num -Apd |void |sv_setnv |NN SV* sv|NV num +Apd |void |sv_setuv |NN SV *const sv|const UV num +Apd |void |sv_setnv |NN SV *const sv|const NV num Apd |SV* |sv_setref_iv |NN SV* rv|NULLOK const char* classname|IV iv Apd |SV* |sv_setref_uv |NN SV* rv|NULLOK const char* classname|UV uv Apd |SV* |sv_setref_nv |NN SV* rv|NULLOK const char* classname|NV nv @@ -898,7 +907,7 @@ Apd |int |sv_unmagic |NN SV* sv|int type Apdmb |void |sv_unref |NN SV* sv Apd |void |sv_unref_flags |NN SV* sv|U32 flags Apd |void |sv_untaint |NN SV* sv -Apd |void |sv_upgrade |NN SV* sv|svtype new_type +Apd |void |sv_upgrade |NN SV *const sv|svtype new_type Apdmb |void |sv_usepvn |NN SV* sv|NULLOK char* ptr|STRLEN len Apd |void |sv_usepvn_flags|NN SV* sv|NULLOK char* ptr|STRLEN len\ |U32 flags @@ -912,7 +921,7 @@ 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 Ap |void |taint_env -Ap |void |taint_proper |NULLOK const char* f|NN const char* s +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 \ |NN SV **swashp|NN const char *normal|NN const char *special Apd |UV |to_utf8_lower |NN const U8 *p|NN U8* ustrp|NULLOK STRLEN *lenp @@ -980,11 +989,11 @@ Ap |void |vwarner |U32 err|NN const char* pat|NULLOK va_list* args p |void |watch |NN char** addr Ap |I32 |whichsig |NN const char* sig p |void |write_to_stderr|NN const char* message|int msglen -p |int |yyerror |NN const char* s +p |int |yyerror |NN const char *const s EXp |int |yylex p |int |yyparse p |void |parser_free |NN const yy_parser * -p |int |yywarn |NN const char* s +p |int |yywarn |NN const char *const s #if defined(MYMALLOC) Ap |void |dump_mstats |NN char* s Ap |int |get_mstats |NN perl_mstats_t *buf|int buflen|int level @@ -1007,10 +1016,10 @@ Apdbm |void |sv_catpvn_mg |NN SV *sv|NN const char *ptr|STRLEN len Apdbm |void |sv_catsv_mg |NN SV *dstr|NULLOK SV *sstr Afpd |void |sv_setpvf_mg |NN SV *sv|NN const char* pat|... Apd |void |sv_vsetpvf_mg |NN SV* sv|NN const char* pat|NULLOK va_list* args -Apd |void |sv_setiv_mg |NN SV *sv|IV i +Apd |void |sv_setiv_mg |NN SV *const sv|const IV i Apdb |void |sv_setpviv_mg |NN SV *sv|IV iv -Apd |void |sv_setuv_mg |NN SV *sv|UV u -Apd |void |sv_setnv_mg |NN SV *sv|NV num +Apd |void |sv_setuv_mg |NN SV *const sv|const UV u +Apd |void |sv_setnv_mg |NN SV *const sv|const NV num Apd |void |sv_setpv_mg |NN SV *sv|NULLOK const char *ptr Apd |void |sv_setpvn_mg |NN SV *sv|NN const char *ptr|STRLEN len Apd |void |sv_setsv_mg |NN SV *dstr|NULLOK SV *sstr @@ -1076,7 +1085,8 @@ Apa |ANY* |ss_dup |NN PerlInterpreter* proto_perl|NN CLONE_PARAMS* param ApR |void* |any_dup |NULLOK void* v|NN const PerlInterpreter* proto_perl ApR |HE* |he_dup |NULLOK const HE* e|bool shared|NN CLONE_PARAMS* param ApR |HEK* |hek_dup |NULLOK HEK* e|NN CLONE_PARAMS* param -ApR |REGEXP*|re_dup |NULLOK const REGEXP* r|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* fp|char type|NN CLONE_PARAMS* param ApR |DIR* |dirp_dup |NULLOK DIR* dp ApR |GP* |gp_dup |NULLOK GP* gp|NN CLONE_PARAMS* param @@ -1106,6 +1116,7 @@ ApR |const char * |custom_op_desc |NN const OP* op Adp |void |sv_nosharing |NULLOK SV *sv Adpbm |void |sv_nolocking |NULLOK SV *sv +Adp |bool |sv_destroyable |NULLOK SV *sv #ifdef NO_MATHOMS Adpbm |void |sv_nounlocking |NULLOK SV *sv #else @@ -1126,12 +1137,13 @@ sR |I32 |do_trans_complex_utf8 |NN SV * const sv #if defined(PERL_IN_GV_C) || defined(PERL_DECL_PROT) s |void |gv_init_sv |NN GV *gv|I32 sv_type +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 \ |NN const char *methpv|const U32 flags #endif : #if defined(PERL_IN_HV_C) || defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT) -paRxo |void* |get_arena |size_t svtype|U32 misc +paRxo |void* |get_arena |const size_t svtype|const U32 misc : #endif #if defined(PERL_IN_HV_C) || defined(PERL_DECL_PROT) @@ -1142,13 +1154,10 @@ 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* sv|I32 len|U32 hash|int flags -sR |SV* |hv_magic_uvar_xkey|NN HV* hv|NN SV* keysv|int action 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 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 \ - |STRLEN klen|int flags|int action|NULLOK SV* val|U32 hash sM |void |clear_placeholders |NN HV* hb|U32 items sM |SV * |refcounted_he_value |NN const struct refcounted_he *he #endif @@ -1206,6 +1215,7 @@ pR |OP* |ck_substr |NN OP *o pR |OP* |ck_svconst |NN OP *o pR |OP* |ck_trunc |NN OP *o pR |OP* |ck_unpack |NN OP *o +pR |OP* |ck_each |NN OP *o sRn |bool |is_handle_constructor|NN const OP *o|I32 numargs sR |I32 |is_list_assignment|NULLOK const OP *o # ifdef USE_ITHREADS @@ -1254,7 +1264,7 @@ s |void |Slab_to_rw |NN void *op #if defined(PERL_IN_PERL_C) || defined(PERL_DECL_PROT) s |void |find_beginning |NN SV* linestr_sv|NN PerlIO *rsfp -s |void |forbid_setid |const char flag|const int suidscript +s |void |forbid_setid |const char flag|const bool suidscript s |void |incpush |NULLOK const char *dir|bool addsubdirs|bool addoldvers|bool usesep|bool canrelocate s |void |init_interp s |void |init_ids @@ -1265,12 +1275,25 @@ s |void |init_predump_symbols rs |void |my_exit_jump s |void |nuke_stacks s |int |open_script |NN const char *scriptname|bool dosearch \ - |NN SV *sv|NN int *suidscript|NN PerlIO **rsfpp + |NN bool *suidscript|NN PerlIO **rsfpp s |void |usage |NN const char *name -s |void |validate_suid |NN const char *validarg \ +#ifdef DOSUID +# ifdef IAMSUID +so |void |validate_suid |NN const char *validarg \ + |int fdscript \ + |bool suidscript|NN SV* linestr_sv \ + |NN PerlIO *rsfp +# else +so |void |validate_suid |NN const char *validarg \ |NN const char *scriptname|int fdscript \ - |int suidscript|NN SV* linestr_sv \ + |NN SV* linestr_sv \ |NN PerlIO *rsfp +# endif +#else +# ifndef SETUID_SCRIPTS_ARE_SECURE_NOW +so |void |validate_suid |NN PerlIO *rsfp +# endif +#endif # if defined(IAMSUID) s |int |fd_on_nosuid_fs|int fd @@ -1307,7 +1330,6 @@ snR |char * |bytes_to_uni |NN const U8 *start|STRLEN len|NN char *dest #if defined(PERL_IN_PP_CTL_C) || defined(PERL_DECL_PROT) sR |OP* |docatch |NULLOK OP *o -s |void |docatch_body sR |OP* |dofindlabel |NN OP *o|NN const char *label|NN OP **opstack|NN OP **oplimit sR |OP* |doparseform |NN SV *sv snR |bool |num_overflow |NV value|I32 fldsize|I32 frcsize @@ -1315,16 +1337,17 @@ sR |I32 |dopoptoeval |I32 startingblock sR |I32 |dopoptogiven |I32 startingblock sR |I32 |dopoptolabel |NN const char *label sR |I32 |dopoptoloop |I32 startingblock -sR |I32 |dopoptosub |I32 startingblock 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 -sR |OP* |doeval |int gimme|NULLOK OP** startop|NULLOK CV* outside|U32 seq -sR |PerlIO *|check_type_and_open|NN const char *name|NN const char *mode -sR |PerlIO *|doopen_pm |NN const char *name|NN const char *mode +s |bool |doeval |int gimme|NULLOK OP** startop|NULLOK CV* outside|U32 seq +sR |PerlIO *|check_type_and_open|NN const char *name +#ifndef PERL_DISABLE_PMC +sR |PerlIO *|doopen_pm |NN const char *name|const STRLEN namelen +#endif sRn |bool |path_is_absolute|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 |PMOP* |make_matcher |NN REGEXP* re sR |bool |matcher_matches_sv|NN PMOP* matcher|NN SV* sv s |void |destroy_matcher|NN PMOP* matcher s |OP* |do_smartmatch |NULLOK HV* seen_this|NULLOK HV* seen_other @@ -1350,9 +1373,6 @@ s |void |qsortsvu |NN SV** array|size_t num_elts|NN SVCOMPARE_t compare #if defined(PERL_IN_PP_SYS_C) || defined(PERL_DECL_PROT) s |OP* |doform |NN CV *cv|NN GV *gv|NN OP *retop -# if !defined(PERL_EFF_ACCESS) && defined(HAS_ACCESS) && (defined(HAS_SETREUID) || defined(HAS_SETRESUID) || defined(HAS_SETREGID) || defined(HAS_SETRESGID)) -# endif -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 @@ -1403,6 +1423,7 @@ Es |I32 |make_trie |NN struct RExC_state_t* state|NN regnode *startbranch \ Es |void |make_trie_failtable |NN struct RExC_state_t* state \ |NN regnode *source|NN regnode *node|U32 depth # ifdef DEBUGGING +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 \ |NULLOK const regnode *last \ @@ -1443,7 +1464,9 @@ ERs |I32 |reg_check_named_buff_matched |NN const regexp *rex|NN const regnode *p # ifdef DEBUGGING Es |void |dump_exec_pos |NN const char *locinput|NN const regnode *scan|NN const char *loc_regeol\ |NN const char *loc_bostr|NN const char *loc_reg_starttry|const bool do_utf8 -Es |void |debug_start_match|NN const regexp *prog|const bool do_utf8|NN const char *start|NN const char *end|NN const char *blurb +Es |void |debug_start_match|NN const REGEXP *prog|const bool do_utf8\ + |NN const char *start|NN const char *end\ + |NN const char *blurb # endif #endif @@ -1469,10 +1492,10 @@ poM |int |sv_kill_backrefs |NN SV *sv|NN AV *av #endif #if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT) -nsR |char * |uiv_2buf |NN char *buf|IV iv|UV uv|int is_uv|NN char **peob +nsR |char * |uiv_2buf |NN char *const buf|const IV iv|UV uv|const int is_uv|NN char **const peob s |void |sv_unglob |NN SV* sv -s |void |not_a_number |NN SV *sv -s |I32 |visit |NN SVFUNC_t f|U32 flags|U32 mask +s |void |not_a_number |NN SV *const sv +s |I32 |visit |NN SVFUNC_t f|const U32 flags|const U32 mask s |void |sv_del_backref |NN SV *target|NN SV *ref sR |SV * |varname |NULLOK GV *gv|const char gvtype|PADOFFSET targ \ |NULLOK SV *keyname|I32 aindex|int subscript_type @@ -1480,7 +1503,11 @@ sR |SV * |varname |NULLOK GV *gv|const char gvtype|PADOFFSET targ \ s |void |del_sv |NN SV *p # endif # if !defined(NV_PRESERVES_UV) -s |int |sv_2iuv_non_preserve |NN SV *sv|I32 numtype +# ifdef DEBUGGING +s |int |sv_2iuv_non_preserve |NN SV *const sv|I32 numtype +# else +s |int |sv_2iuv_non_preserve |NN SV *const sv +# endif # endif sR |I32 |expect_number |NN char** pattern # @@ -1500,8 +1527,8 @@ sn |char * |F0convert |NV nv|NN char *endbuf|NN STRLEN *len sM |void |sv_release_COW |NN SV *sv|NN const char *pvx|NN SV *after # endif s |SV * |more_sv -s |void * |more_bodies |svtype sv_type -s |bool |sv_2iuv_common |NN SV *sv +s |void * |more_bodies |const svtype sv_type +s |bool |sv_2iuv_common |NN SV *const 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 sRn |PTR_TBL_ENT_t *|ptr_table_find|NN PTR_TBL_t *tbl|NN const void *sv @@ -1528,37 +1555,37 @@ 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 *buf|STRLEN len + |NULLOK const char *const buf|STRLEN len sR |char* |skipspace |NN char *s sR |char* |swallow_bom |NN U8 *s s |void |checkcomma |NN const char *s|NN const char *name \ |NN const char *what -s |bool |feature_is_enabled|NN const char* name|STRLEN namelen +s |bool |feature_is_enabled|NN const char *const name|STRLEN namelen s |void |force_ident |NN const char *s|int kind s |void |incline |NN const char *s s |int |intuit_method |NN char *s|NULLOK GV *gv|NULLOK CV *cv s |int |intuit_more |NN char *s s |I32 |lop |I32 f|int x|NN char *s rs |void |missingterm |NULLOK char *s -s |void |no_op |NN const char *what|NULLOK char *s -s |void |set_csh +s |void |no_op |NN const char *const what|NULLOK char *s sR |I32 |sublex_done sR |I32 |sublex_push sR |I32 |sublex_start sR |char * |filter_gets |NN SV *sv|NN PerlIO *fp|STRLEN append -sR |HV * |find_in_my_stash|NN const char *pkgname|I32 len +sR |HV * |find_in_my_stash|NN const char *pkgname|STRLEN len sR |char * |tokenize_use |int is_use|NN char *s -s |SV* |new_constant |NULLOK const char *s|STRLEN len|NN const char *key|NN SV *sv \ - |NULLOK SV *pv|NULLOK const char *type +so |SV* |new_constant |NULLOK const char *s|STRLEN len \ + |NN const char *key|STRLEN keylen|NN SV *sv \ + |NULLOK SV *pv|NULLOK const char *type \ + |STRLEN typelen s |int |ao |int toketype -s |const char*|incl_perldb # if defined(PERL_CR_FILTER) s |I32 |cr_textfilter |int idx|NULLOK SV *sv|int maxlen s |void |strip_return |NN SV *sv # endif # if defined(DEBUGGING) -s |int |tokereport |I32 rv -s |void |printbuf |NN const char* fmt|NN const char* s +s |int |tokereport |I32 rv|NN const YYSTYPE* lvalp +s |void |printbuf |NN const char *const fmt|NN const char *const s # endif #endif @@ -1599,7 +1626,7 @@ Apd |void |sv_catpvn_flags|NN SV* sv|NN const char* ptr|STRLEN len|I32 flags Apd |void |sv_catsv_flags |NN SV* dsv|NULLOK SV* ssv|I32 flags Apd |STRLEN |sv_utf8_upgrade_flags|NN SV *sv|I32 flags Apd |char* |sv_pvn_force_flags|NN SV* sv|NULLOK STRLEN* lp|I32 flags -Apd |void |sv_copypv |NN SV* dsv|NN SV* ssv +Apd |void |sv_copypv |NN SV *const dsv|NN SV *const ssv Ap |char* |my_atof2 |NN const char *s|NN NV* value Apn |int |my_socketpair |int family|int type|int protocol|int fd[2] Ap |int |my_dirfd |NULLOK DIR* dir @@ -1667,7 +1694,7 @@ sd |PADOFFSET|pad_findlex |NN const char *name|NN const CV* cv|U32 seq|int warn sd |void |cv_dump |NN const CV *cv|NN const char *title # endif #endif -pdR |CV* |find_runcv |NULLOK U32 *db_seqp +ApdR |CV* |find_runcv |NULLOK U32 *db_seqp p |void |free_tied_hv_pool #if defined(DEBUGGING) pR |int |get_debug_opts |NN const char **s|bool givehelp @@ -1792,7 +1819,7 @@ Apo |bool |ckwarn_d |U32 w XEopMa |STRLEN *|new_warnings_bitfield|NULLOK STRLEN *buffer \ |NN const char *const bits|STRLEN size -p |void |offer_nice_chunk |NN void *chunk|U32 chunk_size +p |void |offer_nice_chunk |NN void *const chunk|const U32 chunk_size #ifndef SPRINTF_RETURNS_STRLEN Apnod |int |my_sprintf |NN char *buffer|NN const char *pat|... @@ -1855,7 +1882,8 @@ 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 |MADPROP*|newMADPROP |char key|char type|NULLOK const void* val \ + |I32 vlen Mp |void |mad_free |NULLOK MADPROP* mp # if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT) @@ -1880,11 +1908,17 @@ p |struct mro_meta* |mro_meta_init |NN HV* stash p |struct mro_meta* |mro_meta_dup |NN struct mro_meta* smeta|NN CLONE_PARAMS* param #endif Apd |AV* |mro_get_linear_isa|NN HV* stash -Apd |AV* |mro_get_linear_isa_c3|NN HV* stash|I32 level -Apd |AV* |mro_get_linear_isa_dfs|NN HV* stash|I32 level +#if defined(PERL_IN_MRO_C) || defined(PERL_DECL_PROT) +sd |AV* |mro_get_linear_isa_c3|NN HV* stash|I32 level +sd |AV* |mro_get_linear_isa_dfs|NN HV* stash|I32 level +#endif pd |void |mro_isa_changed_in|NN HV* stash Apd |void |mro_method_changed_in |NN HV* stash p |void |boot_core_mro +Apon |void |sys_init |NN int* argc|NN char*** argv +Apon |void |sys_init3 |NN int* argc|NN char*** argv|NN char*** env +Apon |void |sys_term + END_EXTERN_C /*