X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=proto.h;h=b5ade0278b767b1141490017eef92d3182e51b27;hb=1a67fee7d910c67790fff4a69f2f20f7628aa80a;hp=cf5efbdee0daad5db6b8cf3e0a2c470849ed8aff;hpb=7bab3ede7bf671f54f0d8f3d55d015d9c9882812;p=p5sagit%2Fp5-mst-13.2.git diff --git a/proto.h b/proto.h index cf5efbd..b5ade02 100644 --- a/proto.h +++ b/proto.h @@ -7,11 +7,13 @@ * License or the Artistic License, as specified in the README file. * * !!!!!!! DO NOT EDIT THIS FILE !!!!!!! - * This file is autogenerated from data in embed.pl. Edit that file - * and run 'make regen_headers' to effect changes. + * This file is built by embed.pl from data in embed.fnc, embed.pl, + * pp.sym, intrpvar.h, perlvars.h and thrdvar.h. + * Any changes made here will be lost! + * + * Edit those files and run 'make regen_headers' to effect changes. */ - START_EXTERN_C #if defined(PERL_IMPLICIT_SYS) @@ -84,9 +86,6 @@ PERL_CALLCONV UV Perl_cast_uv(pTHX_ NV f); #if !defined(HAS_TRUNCATE) && !defined(HAS_CHSIZE) && defined(F_FREESP) PERL_CALLCONV I32 Perl_my_chsize(pTHX_ int fd, Off_t length); #endif -#if defined(USE_5005THREADS) -PERL_CALLCONV MAGIC* Perl_condpair_magic(pTHX_ SV *sv); -#endif PERL_CALLCONV OP* Perl_convert(pTHX_ I32 optype, I32 flags, OP* o); PERL_CALLCONV void Perl_croak(pTHX_ const char* pat, ...) __attribute__((noreturn)) #ifdef CHECK_FORMAT @@ -260,9 +259,6 @@ PERL_CALLCONV void Perl_dump_sub(pTHX_ GV* gv); PERL_CALLCONV void Perl_fbm_compile(pTHX_ SV* sv, U32 flags); PERL_CALLCONV char* Perl_fbm_instr(pTHX_ unsigned char* big, unsigned char* bigend, SV* littlesv, U32 flags); PERL_CALLCONV char* Perl_find_script(pTHX_ char *scriptname, bool dosearch, char **search_ext, I32 flags); -#if defined(USE_5005THREADS) -PERL_CALLCONV PADOFFSET Perl_find_threadsv(pTHX_ const char *name); -#endif PERL_CALLCONV OP* Perl_force_list(pTHX_ OP* arg); PERL_CALLCONV OP* Perl_fold_constants(pTHX_ OP* arg); PERL_CALLCONV char* Perl_form(pTHX_ const char* pat, ...) @@ -427,9 +423,6 @@ PERL_CALLCONV int Perl_magic_gettaint(pTHX_ SV* sv, MAGIC* mg); PERL_CALLCONV int Perl_magic_getuvar(pTHX_ SV* sv, MAGIC* mg); PERL_CALLCONV int Perl_magic_getvec(pTHX_ SV* sv, MAGIC* mg); PERL_CALLCONV U32 Perl_magic_len(pTHX_ SV* sv, MAGIC* mg); -#if defined(USE_5005THREADS) -PERL_CALLCONV int Perl_magic_mutexfree(pTHX_ SV* sv, MAGIC* mg); -#endif PERL_CALLCONV int Perl_magic_nextpack(pTHX_ SV* sv, MAGIC* mg, SV* key); PERL_CALLCONV U32 Perl_magic_regdata_cnt(pTHX_ SV* sv, MAGIC* mg); PERL_CALLCONV int Perl_magic_regdatum_get(pTHX_ SV* sv, MAGIC* mg); @@ -579,28 +572,26 @@ PERL_CALLCONV char* Perl_scan_vstring(pTHX_ char *vstr, SV *sv); PERL_CALLCONV char* Perl_scan_version(pTHX_ char *vstr, SV *sv); PERL_CALLCONV SV* Perl_new_version(pTHX_ SV *ver); PERL_CALLCONV SV* Perl_upg_version(pTHX_ SV *ver); -PERL_CALLCONV SV* Perl_vnumify(pTHX_ SV *sv, SV *vs); -PERL_CALLCONV SV* Perl_vstringify(pTHX_ SV *sv, SV *vs); +PERL_CALLCONV SV* Perl_vnumify(pTHX_ SV *vs); +PERL_CALLCONV SV* Perl_vstringify(pTHX_ SV *vs); +PERL_CALLCONV int Perl_vcmp(pTHX_ SV *lvs, SV *rvs); PERL_CALLCONV PerlIO* Perl_nextargv(pTHX_ GV* gv); PERL_CALLCONV char* Perl_ninstr(pTHX_ const char* big, const char* bigend, const char* little, const char* lend); PERL_CALLCONV OP* Perl_oopsCV(pTHX_ OP* o); PERL_CALLCONV void Perl_op_free(pTHX_ OP* arg); PERL_CALLCONV void Perl_package(pTHX_ OP* o); PERL_CALLCONV PADOFFSET Perl_pad_alloc(pTHX_ I32 optype, U32 tmptype); -PERL_CALLCONV PADOFFSET Perl_pad_allocmy(pTHX_ char* name); +PERL_CALLCONV PADOFFSET Perl_allocmy(pTHX_ char* name); PERL_CALLCONV PADOFFSET Perl_pad_findmy(pTHX_ char* name); PERL_CALLCONV OP* Perl_oopsAV(pTHX_ OP* o); PERL_CALLCONV OP* Perl_oopsHV(pTHX_ OP* o); -PERL_CALLCONV void Perl_pad_leavemy(pTHX_ I32 fill); +PERL_CALLCONV void Perl_pad_leavemy(pTHX); PERL_CALLCONV SV* Perl_pad_sv(pTHX_ PADOFFSET po); PERL_CALLCONV void Perl_pad_free(pTHX_ PADOFFSET po); PERL_CALLCONV void Perl_pad_reset(pTHX); -PERL_CALLCONV void Perl_pad_swipe(pTHX_ PADOFFSET po); +PERL_CALLCONV void Perl_pad_swipe(pTHX_ PADOFFSET po, bool refadjust); PERL_CALLCONV void Perl_peep(pTHX_ OP* o); PERL_CALLCONV PerlIO* Perl_start_glob(pTHX_ SV* pattern, IO *io); -#if defined(USE_5005THREADS) -PERL_CALLCONV struct perl_thread* Perl_new_struct_thread(pTHX_ struct perl_thread *t); -#endif #if defined(USE_REENTRANT_API) PERL_CALLCONV void Perl_reentrant_size(pTHX); PERL_CALLCONV void Perl_reentrant_init(pTHX); @@ -763,7 +754,7 @@ PERL_CALLCONV I32 Perl_sv_cmp_locale(pTHX_ SV* sv1, SV* sv2); #if defined(USE_LOCALE_COLLATE) PERL_CALLCONV char* Perl_sv_collxfrm(pTHX_ SV* sv, STRLEN* nxp); #endif -PERL_CALLCONV OP* Perl_sv_compile_2op(pTHX_ SV* sv, OP** startp, char* code, AV** avp); +PERL_CALLCONV OP* Perl_sv_compile_2op(pTHX_ SV* sv, OP** startp, char* code, PAD** padp); PERL_CALLCONV int Perl_getcwd_sv(pTHX_ SV* sv); PERL_CALLCONV void Perl_sv_dec(pTHX_ SV* sv); PERL_CALLCONV void Perl_sv_dump(pTHX_ SV* sv); @@ -835,9 +826,6 @@ PERL_CALLCONV UV Perl_to_utf8_fold(pTHX_ U8 *p, U8* ustrp, STRLEN *lenp); #if defined(UNLINK_ALL_VERSIONS) PERL_CALLCONV I32 Perl_unlnk(pTHX_ char* f); #endif -#if defined(USE_5005THREADS) -PERL_CALLCONV void Perl_unlock_condpair(pTHX_ void* svv); -#endif PERL_CALLCONV I32 Perl_unpack_str(pTHX_ char *pat, char *patend, char *s, char *strbeg, char *strend, char **new_s, I32 ocnt, U32 flags); PERL_CALLCONV void Perl_unsharepvn(pTHX_ const char* sv, I32 len, U32 hash); PERL_CALLCONV void Perl_unshare_hek(pTHX_ HEK* hek); @@ -899,9 +887,6 @@ PERL_CALLCONV struct perl_vars * Perl_GetVars(pTHX); #endif PERL_CALLCONV int Perl_runops_standard(pTHX); PERL_CALLCONV int Perl_runops_debug(pTHX); -#if defined(USE_5005THREADS) -PERL_CALLCONV SV* Perl_sv_lock(pTHX_ SV *sv); -#endif PERL_CALLCONV void Perl_sv_catpvf_mg(pTHX_ SV *sv, const char* pat, ...) #ifdef CHECK_FORMAT __attribute__((format(printf,pTHX_2,pTHX_3))) @@ -1050,17 +1035,11 @@ STATIC OP* S_no_fh_allowed(pTHX_ OP *o); STATIC OP* S_scalarboolean(pTHX_ OP *o); STATIC OP* S_too_few_arguments(pTHX_ OP *o, char* name); STATIC OP* S_too_many_arguments(pTHX_ OP *o, char* name); -STATIC PADOFFSET S_pad_addlex(pTHX_ SV* name); -STATIC PADOFFSET S_pad_findlex(pTHX_ char* name, PADOFFSET newoff, U32 seq, CV* startcv, I32 cx_ix, I32 saweval, U32 flags); STATIC OP* S_newDEFSVOP(pTHX); STATIC OP* S_new_logop(pTHX_ I32 type, I32 flags, OP **firstp, OP **otherp); STATIC void S_simplify_sort(pTHX_ OP *o); STATIC bool S_is_handle_constructor(pTHX_ OP *o, I32 argnum); STATIC char* S_gv_ename(pTHX_ GV *gv); -# if defined(DEBUG_CLOSURES) -STATIC void S_cv_dump(pTHX_ CV *cv); -# endif -STATIC CV* S_cv_clone2(pTHX_ CV *proto, CV *outside); STATIC bool S_scalar_mod_type(pTHX_ OP *o, I32 type); STATIC OP * S_my_kid(pTHX_ OP *o, OP *attrs, OP **imopsp); STATIC OP * S_dup_attrlist(pTHX_ OP *o); @@ -1075,7 +1054,7 @@ STATIC void S_Slab_Free(pTHX_ void *op); #if defined(PERL_IN_PERL_C) || defined(PERL_DECL_PROT) STATIC void S_find_beginning(pTHX); STATIC void S_forbid_setid(pTHX_ char *); -STATIC void S_incpush(pTHX_ char *, int, int); +STATIC void S_incpush(pTHX_ char *, int, int, int); STATIC void S_init_interp(pTHX); STATIC void S_init_ids(pTHX); STATIC void S_init_lexer(pTHX); @@ -1101,9 +1080,6 @@ STATIC void* S_vrun_body(pTHX_ va_list args); STATIC void* S_vcall_body(pTHX_ va_list args); STATIC void* S_vcall_list_body(pTHX_ va_list args); #endif -# if defined(USE_5005THREADS) -STATIC struct perl_thread * S_init_main_thread(pTHX); -# endif #endif #if defined(PERL_IN_PP_C) || defined(PERL_DECL_PROT) @@ -1136,7 +1112,7 @@ STATIC I32 S_dopoptoloop(pTHX_ I32 startingblock); STATIC I32 S_dopoptosub(pTHX_ I32 startingblock); STATIC I32 S_dopoptosub_at(pTHX_ PERL_CONTEXT* cxstk, I32 startingblock); STATIC void S_save_lines(pTHX_ AV *array, SV *sv); -STATIC OP* S_doeval(pTHX_ int gimme, OP** startop); +STATIC OP* S_doeval(pTHX_ int gimme, OP** startop, CV* outside, U32 seq); STATIC PerlIO * S_doopen_pmc(pTHX_ const char *name, const char *mode); STATIC bool S_path_is_absolute(pTHX_ char *name); #endif @@ -1383,6 +1359,31 @@ PERL_CALLCONV void Perl_deb_stack_all(pTHX); STATIC void S_deb_stack_n(pTHX_ SV** stack_base, I32 stack_min, I32 stack_max, I32 mark_min, I32 mark_max); #endif +PERL_CALLCONV PADLIST* Perl_pad_new(pTHX_ padnew_flags flags); +PERL_CALLCONV void Perl_pad_undef(pTHX_ CV* cv); +PERL_CALLCONV PADOFFSET Perl_pad_add_name(pTHX_ char *name, HV* typestash, HV* ourstash, bool clone); +PERL_CALLCONV PADOFFSET Perl_pad_add_anon(pTHX_ SV* sv, OPCODE op_type); +PERL_CALLCONV void Perl_pad_check_dup(pTHX_ char* name, bool is_our, HV* ourstash); +#ifdef DEBUGGING +PERL_CALLCONV void Perl_pad_setsv(pTHX_ PADOFFSET po, SV* sv); +#endif +PERL_CALLCONV void Perl_pad_block_start(pTHX_ int full); +PERL_CALLCONV void Perl_pad_tidy(pTHX_ padtidy_type type); +PERL_CALLCONV void Perl_do_dump_pad(pTHX_ I32 level, PerlIO *file, PADLIST *padlist, int full); +PERL_CALLCONV void Perl_pad_fixup_inner_anons(pTHX_ PADLIST *padlist, CV *old_cv, CV *new_cv); + +PERL_CALLCONV void Perl_pad_push(pTHX_ PADLIST *padlist, int depth, int has_args); + +#if defined(PERL_IN_PAD_C) || defined(PERL_DECL_PROT) +STATIC PADOFFSET S_pad_findlex(pTHX_ char* name, PADOFFSET newoff, CV* innercv); +# if defined(DEBUGGING) +STATIC void S_cv_dump(pTHX_ CV *cv, char *title); +# endif +STATIC CV* S_cv_clone2(pTHX_ CV *proto, CV *outside); +#endif +PERL_CALLCONV CV* Perl_find_runcv(pTHX); + + END_EXTERN_C