X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/b82d478d407f1381d69179104035c975c1d1402e..89d60977162f464114a3f311f9059bb0c281bdbd:/perlapi.c?ds=sidebyside diff --git a/perlapi.c b/perlapi.c old mode 100755 new mode 100644 index 04d48b9..ec2ee38 --- a/perlapi.c +++ b/perlapi.c @@ -480,6 +480,8 @@ Perl_sv_setpvf_mg_nocontext(SV* sv, const char* pat, ...) } #undef Perl_fprintf_nocontext + +#undef Perl_printf_nocontext #endif #undef Perl_cv_const_sv @@ -1095,6 +1097,13 @@ Perl_init_stacks(pTHXo) ((CPerlObj*)pPerl)->Perl_init_stacks(); } +#undef Perl_init_tm +void +Perl_init_tm(pTHXo_ struct tm *ptm) +{ + ((CPerlObj*)pPerl)->Perl_init_tm(ptm); +} + #undef Perl_instr char* Perl_instr(pTHXo_ const char* big, const char* little) @@ -1466,6 +1475,13 @@ Perl_leave_scope(pTHXo_ I32 base) ((CPerlObj*)pPerl)->Perl_leave_scope(base); } +#undef Perl_op_null +void +Perl_op_null(pTHXo_ OP* o) +{ + ((CPerlObj*)pPerl)->Perl_op_null(o); +} + #undef Perl_load_module void Perl_load_module(pTHXo_ U32 flags, SV* name, SV* ver, ...) @@ -1489,6 +1505,20 @@ Perl_looks_like_number(pTHXo_ SV* sv) { return ((CPerlObj*)pPerl)->Perl_looks_like_number(sv); } + +#undef Perl_grok_number +int +Perl_grok_number(pTHXo_ const char *pv, STRLEN len, UV *valuep) +{ + return ((CPerlObj*)pPerl)->Perl_grok_number(pv, len, valuep); +} + +#undef Perl_grok_numeric_radix +bool +Perl_grok_numeric_radix(pTHXo_ const char **sp, const char *send) +{ + return ((CPerlObj*)pPerl)->Perl_grok_numeric_radix(sp, send); +} #if defined(USE_THREADS) #endif #if defined(USE_LOCALE_COLLATE) @@ -1586,6 +1616,13 @@ Perl_mg_size(pTHXo_ SV* sv) return ((CPerlObj*)pPerl)->Perl_mg_size(sv); } +#undef Perl_mini_mktime +void +Perl_mini_mktime(pTHXo_ struct tm *pm) +{ + ((CPerlObj*)pPerl)->Perl_mini_mktime(pm); +} + #undef Perl_moreswitches char* Perl_moreswitches(pTHXo_ char* s) @@ -1599,7 +1636,7 @@ Perl_my_atof(pTHXo_ const char *s) { return ((CPerlObj*)pPerl)->Perl_my_atof(s); } -#if !defined(HAS_BCOPY) || !defined(HAS_SAFE_BCOPY) +#if (!defined(HAS_MEMCPY) && !defined(HAS_BCOPY)) || (!defined(HAS_MEMMOVE) && !defined(HAS_SAFE_MEMCPY) && !defined(HAS_SAFE_BCOPY)) #undef Perl_my_bcopy char* @@ -1641,6 +1678,30 @@ Perl_my_fflush_all(pTHXo) return ((CPerlObj*)pPerl)->Perl_my_fflush_all(); } +#undef Perl_my_fork +Pid_t +Perl_my_fork() +{ + dTHXo; + return ((CPerlObj*)pPerl)->Perl_my_fork(); +} + +#undef Perl_atfork_lock +void +Perl_atfork_lock() +{ + dTHXo; + ((CPerlObj*)pPerl)->Perl_atfork_lock(); +} + +#undef Perl_atfork_unlock +void +Perl_atfork_unlock() +{ + dTHXo; + ((CPerlObj*)pPerl)->Perl_atfork_unlock(); +} + #undef Perl_my_lstat I32 Perl_my_lstat(pTHXo) @@ -1682,6 +1743,13 @@ Perl_my_popen(pTHXo_ char* cmd, char* mode) { return ((CPerlObj*)pPerl)->Perl_my_popen(cmd, mode); } + +#undef Perl_my_popen_list +PerlIO* +Perl_my_popen_list(pTHXo_ char* mode, int n, SV ** args) +{ + return ((CPerlObj*)pPerl)->Perl_my_popen_list(mode, n, args); +} #endif #undef Perl_my_setenv @@ -1697,6 +1765,13 @@ Perl_my_stat(pTHXo) { return ((CPerlObj*)pPerl)->Perl_my_stat(); } + +#undef Perl_my_strftime +char * +Perl_my_strftime(pTHXo_ char *fmt, int sec, int min, int hour, int mday, int mon, int year, int wday, int yday, int isdst) +{ + return ((CPerlObj*)pPerl)->Perl_my_strftime(fmt, sec, min, hour, mday, mon, year, wday, yday, isdst); +} #if defined(MYSWAP) #undef Perl_my_swap @@ -2402,6 +2477,13 @@ Perl_rsignal(pTHXo_ int i, Sighandler_t t) { return ((CPerlObj*)pPerl)->Perl_rsignal(i, t); } + +#undef Perl_rsignal_state +Sighandler_t +Perl_rsignal_state(pTHXo_ int i) +{ + return ((CPerlObj*)pPerl)->Perl_rsignal_state(i); +} #if !defined(HAS_RENAME) #endif @@ -2601,6 +2683,13 @@ Perl_save_long(pTHXo_ long* longp) ((CPerlObj*)pPerl)->Perl_save_long(longp); } +#undef Perl_save_mortalizesv +void +Perl_save_mortalizesv(pTHXo_ SV* sv) +{ + ((CPerlObj*)pPerl)->Perl_save_mortalizesv(sv); +} + #undef Perl_save_nogv void Perl_save_nogv(pTHXo_ GV* gv) @@ -2937,6 +3026,13 @@ Perl_sv_compile_2op(pTHXo_ SV* sv, OP** startp, char* code, AV** avp) return ((CPerlObj*)pPerl)->Perl_sv_compile_2op(sv, startp, code, avp); } +#undef Perl_getcwd_sv +int +Perl_getcwd_sv(pTHXo_ SV* sv) +{ + return ((CPerlObj*)pPerl)->Perl_getcwd_sv(sv); +} + #undef Perl_sv_dec void Perl_sv_dec(pTHXo_ SV* sv) @@ -3178,6 +3274,13 @@ Perl_sv_setref_iv(pTHXo_ SV* rv, const char* classname, IV iv) return ((CPerlObj*)pPerl)->Perl_sv_setref_iv(rv, classname, iv); } +#undef Perl_sv_setref_uv +SV* +Perl_sv_setref_uv(pTHXo_ SV* rv, const char* classname, UV uv) +{ + return ((CPerlObj*)pPerl)->Perl_sv_setref_uv(rv, classname, uv); +} + #undef Perl_sv_setref_nv SV* Perl_sv_setref_nv(pTHXo_ SV* rv, const char* classname, NV nv) @@ -3306,9 +3409,9 @@ Perl_swash_init(pTHXo_ char* pkg, char* name, SV* listsv, I32 minbits, I32 none) #undef Perl_swash_fetch UV -Perl_swash_fetch(pTHXo_ SV *sv, U8 *ptr) +Perl_swash_fetch(pTHXo_ SV *sv, U8 *ptr, bool do_utf8) { - return ((CPerlObj*)pPerl)->Perl_swash_fetch(sv, ptr); + return ((CPerlObj*)pPerl)->Perl_swash_fetch(sv, ptr, do_utf8); } #undef Perl_taint_env @@ -3427,25 +3530,46 @@ Perl_bytes_to_utf8(pTHXo_ U8 *s, STRLEN *len) return ((CPerlObj*)pPerl)->Perl_bytes_to_utf8(s, len); } -#undef Perl_utf8_to_uv_simple +#undef Perl_utf8_to_uvchr +UV +Perl_utf8_to_uvchr(pTHXo_ U8 *s, STRLEN* retlen) +{ + return ((CPerlObj*)pPerl)->Perl_utf8_to_uvchr(s, retlen); +} + +#undef Perl_utf8_to_uvuni +UV +Perl_utf8_to_uvuni(pTHXo_ U8 *s, STRLEN* retlen) +{ + return ((CPerlObj*)pPerl)->Perl_utf8_to_uvuni(s, retlen); +} + +#undef Perl_utf8n_to_uvchr UV -Perl_utf8_to_uv_simple(pTHXo_ U8 *s, STRLEN* retlen) +Perl_utf8n_to_uvchr(pTHXo_ U8 *s, STRLEN curlen, STRLEN* retlen, U32 flags) { - return ((CPerlObj*)pPerl)->Perl_utf8_to_uv_simple(s, retlen); + return ((CPerlObj*)pPerl)->Perl_utf8n_to_uvchr(s, curlen, retlen, flags); } -#undef Perl_utf8_to_uv +#undef Perl_utf8n_to_uvuni UV -Perl_utf8_to_uv(pTHXo_ U8 *s, STRLEN curlen, STRLEN* retlen, U32 flags) +Perl_utf8n_to_uvuni(pTHXo_ U8 *s, STRLEN curlen, STRLEN* retlen, U32 flags) { - return ((CPerlObj*)pPerl)->Perl_utf8_to_uv(s, curlen, retlen, flags); + return ((CPerlObj*)pPerl)->Perl_utf8n_to_uvuni(s, curlen, retlen, flags); } -#undef Perl_uv_to_utf8 +#undef Perl_uvchr_to_utf8 U8* -Perl_uv_to_utf8(pTHXo_ U8 *d, UV uv) +Perl_uvchr_to_utf8(pTHXo_ U8 *d, UV uv) { - return ((CPerlObj*)pPerl)->Perl_uv_to_utf8(d, uv); + return ((CPerlObj*)pPerl)->Perl_uvchr_to_utf8(d, uv); +} + +#undef Perl_uvuni_to_utf8 +U8* +Perl_uvuni_to_utf8(pTHXo_ U8 *d, UV uv) +{ + return ((CPerlObj*)pPerl)->Perl_uvuni_to_utf8(d, uv); } #undef Perl_warn @@ -3868,10 +3992,10 @@ Perl_sv_pvbyte(pTHXo_ SV *sv) } #undef Perl_sv_utf8_upgrade -void +STRLEN Perl_sv_utf8_upgrade(pTHXo_ SV *sv) { - ((CPerlObj*)pPerl)->Perl_sv_utf8_upgrade(sv); + return ((CPerlObj*)pPerl)->Perl_sv_utf8_upgrade(sv); } #undef Perl_sv_utf8_downgrade @@ -3947,23 +4071,23 @@ Perl_newMYSUB(pTHXo_ I32 floor, OP *o, OP *proto, OP *attrs, OP *block) #undef Perl_cx_dup PERL_CONTEXT* -Perl_cx_dup(pTHXo_ PERL_CONTEXT* cx, I32 ix, I32 max) +Perl_cx_dup(pTHXo_ PERL_CONTEXT* cx, I32 ix, I32 max, clone_params* param) { - return ((CPerlObj*)pPerl)->Perl_cx_dup(cx, ix, max); + return ((CPerlObj*)pPerl)->Perl_cx_dup(cx, ix, max, param); } #undef Perl_si_dup PERL_SI* -Perl_si_dup(pTHXo_ PERL_SI* si) +Perl_si_dup(pTHXo_ PERL_SI* si, clone_params* param) { - return ((CPerlObj*)pPerl)->Perl_si_dup(si); + return ((CPerlObj*)pPerl)->Perl_si_dup(si, param); } #undef Perl_ss_dup ANY* -Perl_ss_dup(pTHXo_ PerlInterpreter* proto_perl) +Perl_ss_dup(pTHXo_ PerlInterpreter* proto_perl, clone_params* param) { - return ((CPerlObj*)pPerl)->Perl_ss_dup(proto_perl); + return ((CPerlObj*)pPerl)->Perl_ss_dup(proto_perl, param); } #undef Perl_any_dup @@ -3975,16 +4099,16 @@ Perl_any_dup(pTHXo_ void* v, PerlInterpreter* proto_perl) #undef Perl_he_dup HE* -Perl_he_dup(pTHXo_ HE* e, bool shared) +Perl_he_dup(pTHXo_ HE* e, bool shared, clone_params* param) { - return ((CPerlObj*)pPerl)->Perl_he_dup(e, shared); + return ((CPerlObj*)pPerl)->Perl_he_dup(e, shared, param); } #undef Perl_re_dup REGEXP* -Perl_re_dup(pTHXo_ REGEXP* r) +Perl_re_dup(pTHXo_ REGEXP* r, clone_params* param) { - return ((CPerlObj*)pPerl)->Perl_re_dup(r); + return ((CPerlObj*)pPerl)->Perl_re_dup(r, param); } #undef Perl_fp_dup @@ -4003,23 +4127,23 @@ Perl_dirp_dup(pTHXo_ DIR* dp) #undef Perl_gp_dup GP* -Perl_gp_dup(pTHXo_ GP* gp) +Perl_gp_dup(pTHXo_ GP* gp, clone_params* param) { - return ((CPerlObj*)pPerl)->Perl_gp_dup(gp); + return ((CPerlObj*)pPerl)->Perl_gp_dup(gp, param); } #undef Perl_mg_dup MAGIC* -Perl_mg_dup(pTHXo_ MAGIC* mg) +Perl_mg_dup(pTHXo_ MAGIC* mg, clone_params* param) { - return ((CPerlObj*)pPerl)->Perl_mg_dup(mg); + return ((CPerlObj*)pPerl)->Perl_mg_dup(mg, param); } #undef Perl_sv_dup SV* -Perl_sv_dup(pTHXo_ SV* sstr) +Perl_sv_dup(pTHXo_ SV* sstr, clone_params* param) { - return ((CPerlObj*)pPerl)->Perl_sv_dup(sstr); + return ((CPerlObj*)pPerl)->Perl_sv_dup(sstr, param); } #if defined(HAVE_INTERP_INTERN) @@ -4058,6 +4182,20 @@ Perl_ptr_table_split(pTHXo_ PTR_TBL_t *tbl) { ((CPerlObj*)pPerl)->Perl_ptr_table_split(tbl); } + +#undef Perl_ptr_table_clear +void +Perl_ptr_table_clear(pTHXo_ PTR_TBL_t *tbl) +{ + ((CPerlObj*)pPerl)->Perl_ptr_table_clear(tbl); +} + +#undef Perl_ptr_table_free +void +Perl_ptr_table_free(pTHXo_ PTR_TBL_t *tbl) +{ + ((CPerlObj*)pPerl)->Perl_ptr_table_free(tbl); +} #endif #if defined(HAVE_INTERP_INTERN) @@ -4089,6 +4227,8 @@ Perl_sys_intern_init(pTHXo) #if defined(PERL_IN_MG_C) || defined(PERL_DECL_PROT) #endif #if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT) +# if defined(DEBUG_CLOSURES) +# endif # if defined(PL_OP_SLAB_ALLOC) # endif #endif @@ -4102,6 +4242,8 @@ Perl_sys_intern_init(pTHXo) #endif #if defined(PERL_IN_PP_C) || defined(PERL_DECL_PROT) #endif +#if defined(PERL_IN_PP_PACK_C) || defined(PERL_DECL_PROT) +#endif #if defined(PERL_IN_PP_CTL_C) || defined(PERL_DECL_PROT) #if defined(PERL_FLEXIBLE_EXCEPTIONS) #endif @@ -4113,20 +4255,79 @@ Perl_sys_intern_init(pTHXo) # endif #endif #if defined(PERL_IN_REGCOMP_C) || defined(PERL_DECL_PROT) +# ifdef DEBUGGING +# endif #endif #if defined(PERL_IN_REGEXEC_C) || defined(PERL_DECL_PROT) #endif #if defined(PERL_IN_RUN_C) || defined(PERL_DECL_PROT) +# ifdef DEBUGGING +# endif #endif #if defined(PERL_IN_SCOPE_C) || defined(PERL_DECL_PROT) #endif +#if defined(USE_ITHREADS) && (defined(PERL_IN_SHAREDSV_C) || defined(PERL_DECL_PROT)) + +#undef Perl_sharedsv_init +void +Perl_sharedsv_init(pTHXo) +{ + ((CPerlObj*)pPerl)->Perl_sharedsv_init(); +} + +#undef Perl_sharedsv_new +shared_sv* +Perl_sharedsv_new(pTHXo) +{ + return ((CPerlObj*)pPerl)->Perl_sharedsv_new(); +} + +#undef Perl_sharedsv_find +shared_sv* +Perl_sharedsv_find(pTHXo_ SV* sv) +{ + return ((CPerlObj*)pPerl)->Perl_sharedsv_find(sv); +} + +#undef Perl_sharedsv_lock +void +Perl_sharedsv_lock(pTHXo_ shared_sv* ssv) +{ + ((CPerlObj*)pPerl)->Perl_sharedsv_lock(ssv); +} + +#undef Perl_sharedsv_unlock +void +Perl_sharedsv_unlock(pTHXo_ shared_sv* ssv) +{ + ((CPerlObj*)pPerl)->Perl_sharedsv_unlock(ssv); +} + +#undef Perl_sharedsv_thrcnt_inc +void +Perl_sharedsv_thrcnt_inc(pTHXo_ shared_sv* ssv) +{ + ((CPerlObj*)pPerl)->Perl_sharedsv_thrcnt_inc(ssv); +} + +#undef Perl_sharedsv_thrcnt_dec +void +Perl_sharedsv_thrcnt_dec(pTHXo_ shared_sv* ssv) +{ + ((CPerlObj*)pPerl)->Perl_sharedsv_thrcnt_dec(ssv); +} +#endif #if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT) -# if defined(DEBUGGING) +# ifdef DEBUGGING # endif # if !defined(NV_PRESERVES_UV) # endif +# if defined(USE_ITHREADS) +# endif #endif #if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT) +# if defined(DEBUGGING) +# endif #if 0 #endif # if defined(CRIPPLED_CC) @@ -4136,6 +4337,8 @@ Perl_sys_intern_init(pTHXo) #endif #if defined(PERL_IN_UNIVERSAL_C) || defined(PERL_DECL_PROT) #endif +#if defined(PERL_IN_LOCALE_C) || defined(PERL_DECL_PROT) +#endif #if defined(PERL_IN_UTIL_C) || defined(PERL_DECL_PROT) # if defined(LEAKTEST) # endif @@ -4143,6 +4346,55 @@ Perl_sys_intern_init(pTHXo) #if defined(PERL_OBJECT) #endif +#undef Perl_sv_setsv_flags +void +Perl_sv_setsv_flags(pTHXo_ SV* dsv, SV* ssv, I32 flags) +{ + ((CPerlObj*)pPerl)->Perl_sv_setsv_flags(dsv, ssv, flags); +} + +#undef Perl_sv_catpvn_flags +void +Perl_sv_catpvn_flags(pTHXo_ SV* sv, const char* ptr, STRLEN len, I32 flags) +{ + ((CPerlObj*)pPerl)->Perl_sv_catpvn_flags(sv, ptr, len, flags); +} + +#undef Perl_sv_catsv_flags +void +Perl_sv_catsv_flags(pTHXo_ SV* dsv, SV* ssv, I32 flags) +{ + ((CPerlObj*)pPerl)->Perl_sv_catsv_flags(dsv, ssv, flags); +} + +#undef Perl_sv_utf8_upgrade_flags +STRLEN +Perl_sv_utf8_upgrade_flags(pTHXo_ SV *sv, I32 flags) +{ + return ((CPerlObj*)pPerl)->Perl_sv_utf8_upgrade_flags(sv, flags); +} + +#undef Perl_sv_pvn_force_flags +char* +Perl_sv_pvn_force_flags(pTHXo_ SV* sv, STRLEN* lp, I32 flags) +{ + return ((CPerlObj*)pPerl)->Perl_sv_pvn_force_flags(sv, lp, flags); +} + +#undef Perl_sv_2pv_flags +char* +Perl_sv_2pv_flags(pTHXo_ SV* sv, STRLEN* lp, I32 flags) +{ + return ((CPerlObj*)pPerl)->Perl_sv_2pv_flags(sv, lp, flags); +} + +#undef Perl_my_atof2 +char* +Perl_my_atof2(pTHXo_ const char *s, NV* value) +{ + return ((CPerlObj*)pPerl)->Perl_my_atof2(s, value); +} + #undef Perl_fprintf_nocontext int Perl_fprintf_nocontext(PerlIO *stream, const char *format, ...) @@ -4153,6 +4405,16 @@ Perl_fprintf_nocontext(PerlIO *stream, const char *format, ...) return (*PL_StdIO->pVprintf)(PL_StdIO, stream, format, arglist); } +#undef Perl_printf_nocontext +int +Perl_printf_nocontext(const char *format, ...) +{ + dTHXo; + va_list(arglist); + va_start(arglist, format); + return (*PL_StdIO->pVprintf)(PL_StdIO, PerlIO_stdout(), format, arglist); +} + END_EXTERN_C #endif /* PERL_OBJECT */