X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=proto.h;h=06ce95a0f3c9258574523b22f8d864afe3955688;hb=f86a8bc58a487e28b31c5d91c65920f4859f3f74;hp=50d552ad8de4e52ba1d8e238cf3a20f9a9e7e06f;hpb=afd1eb533c8ea286efcac6fd054ae7cebaf0dfe3;p=p5sagit%2Fp5-mst-13.2.git diff --git a/proto.h b/proto.h index 50d552a..06ce95a 100644 --- a/proto.h +++ b/proto.h @@ -496,6 +496,9 @@ PERL_CALLCONV char* Perl_my_bzero(char* loc, I32 len); PERL_CALLCONV void Perl_my_exit(pTHX_ U32 status) __attribute__((noreturn)); PERL_CALLCONV void Perl_my_failure_exit(pTHX) __attribute__((noreturn)); PERL_CALLCONV I32 Perl_my_fflush_all(pTHX); +PERL_CALLCONV Pid_t Perl_my_fork(void); +PERL_CALLCONV void Perl_atfork_lock(void); +PERL_CALLCONV void Perl_atfork_unlock(void); PERL_CALLCONV I32 Perl_my_lstat(pTHX); #if !defined(HAS_MEMCMP) || !defined(HAS_SANE_MEMCMP) PERL_CALLCONV I32 Perl_my_memcmp(const char* s1, const char* s2, I32 len); @@ -961,7 +964,7 @@ PERL_CALLCONV PERL_SI* Perl_si_dup(pTHX_ PERL_SI* si, clone_params* param); PERL_CALLCONV ANY* Perl_ss_dup(pTHX_ PerlInterpreter* proto_perl, clone_params* param); PERL_CALLCONV void* Perl_any_dup(pTHX_ void* v, PerlInterpreter* proto_perl); PERL_CALLCONV HE* Perl_he_dup(pTHX_ HE* e, bool shared, clone_params* param); -PERL_CALLCONV REGEXP* Perl_re_dup(pTHX_ REGEXP* r); +PERL_CALLCONV REGEXP* Perl_re_dup(pTHX_ REGEXP* r, clone_params* param); PERL_CALLCONV PerlIO* Perl_fp_dup(pTHX_ PerlIO* fp, char type); PERL_CALLCONV DIR* Perl_dirp_dup(pTHX_ DIR* dp); PERL_CALLCONV GP* Perl_gp_dup(pTHX_ GP* gp, clone_params* param); @@ -1194,6 +1197,17 @@ STATIC void S_debprof(pTHX_ OP *o); STATIC SV* S_save_scalar_at(pTHX_ SV **sptr); #endif +#if defined(USE_ITHREADS) && (defined(PERL_IN_SHAREDSV_C) || defined(PERL_DECL_PROT)) +PERL_CALLCONV void Perl_sharedsv_init(pTHX); +PERL_CALLCONV shared_sv* Perl_sharedsv_new(pTHX); +PERL_CALLCONV shared_sv* Perl_sharedsv_find(pTHX_ SV* sv); +PERL_CALLCONV void Perl_sharedsv_lock(pTHX_ shared_sv* ssv); +PERL_CALLCONV void Perl_sharedsv_unlock(pTHX_ shared_sv* ssv); +PERL_CALLCONV void Perl_sharedsv_unlock_scope(pTHX_ shared_sv* ssv); +PERL_CALLCONV void Perl_sharedsv_thrcnt_inc(pTHX_ shared_sv* ssv); +PERL_CALLCONV void Perl_sharedsv_thrcnt_dec(pTHX_ shared_sv* ssv); +#endif + #if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT) STATIC IV S_asIV(pTHX_ SV* sv); STATIC UV S_asUV(pTHX_ SV* sv); @@ -1258,6 +1272,7 @@ STATIC void S_force_next(pTHX_ I32 type); STATIC char* S_force_version(pTHX_ char *start); STATIC char* S_force_word(pTHX_ char *start, int token, int check_keyword, int allow_pack, int allow_tick); STATIC SV* S_tokeq(pTHX_ SV *sv); +STATIC int S_pending_ident(pTHX); STATIC char* S_scan_const(pTHX_ char *start); STATIC char* S_scan_formline(pTHX_ char *s); STATIC char* S_scan_heredoc(pTHX_ char *s); @@ -1312,6 +1327,7 @@ STATIC char* S_stdize_locale(pTHX_ char* locs); #endif #if defined(PERL_IN_UTIL_C) || defined(PERL_DECL_PROT) +STATIC COP* S_closest_cop(pTHX_ COP *cop, OP *o); STATIC SV* S_mess_alloc(pTHX); # if defined(LEAKTEST) STATIC void S_xstat(pTHX_ int);