X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=intrpvar.h;h=a8d81311f26f74a823ca2947ca0dad485b6eec51;hb=d9f30342f9de4793189d81b85a5e32057393e428;hp=1612b9f4a83bae0090e4c074ac501f210a19a2b6;hpb=93e68bfb4c30bda791d4bf574f645d153ab4343b;p=p5sagit%2Fp5-mst-13.2.git diff --git a/intrpvar.h b/intrpvar.h index 1612b9f..a8d8131 100644 --- a/intrpvar.h +++ b/intrpvar.h @@ -38,6 +38,7 @@ PERLVAR(Iminus_l, bool) PERLVAR(Iminus_a, bool) PERLVAR(Iminus_F, bool) PERLVAR(Idoswitches, bool) +PERLVAR(Iminus_E, bool) /* =head1 Global Variables @@ -69,7 +70,6 @@ PERLVAR(Iformfeed, SV *) /* $^L */ PERLVARI(Imaxsysfd, I32, MAXSYSFD) /* top fd to pass to subprocesses */ -PERLVAR(Imultiline, int) /* $*--do strings hold >1 line? */ PERLVAR(Istatusvalue, I32) /* $? */ PERLVAR(Iexit_flags, U8) /* was exit() unexpected, etc. */ #ifdef VMS @@ -133,6 +133,7 @@ PERLVAR(Iglobalstash, HV *) /* global keyword overrides imported here */ PERLVAR(Icurstname, SV *) /* name of current package */ PERLVAR(Ibeginav, AV *) /* names of BEGIN subroutines */ PERLVAR(Iendav, AV *) /* names of END subroutines */ +PERLVAR(Iunitcheckav, AV *) /* names of UNITCHECK subroutines */ PERLVAR(Icheckav, AV *) /* names of CHECK subroutines */ PERLVAR(Iinitav, AV *) /* names of INIT subroutines */ PERLVAR(Istrtab, HV *) /* shared string table */ @@ -172,7 +173,6 @@ PERLVAR(Ioldname, char *) /* what to preserve mode on */ PERLVAR(IArgv, char **) /* stuff to free from do_aexec, vfork safe */ PERLVAR(ICmd, char *) /* stuff to free from do_aexec, vfork safe */ PERLVARI(Igensym, I32, 0) /* next symbol for getsym() to define */ -PERLVAR(Ipreambled, bool) PERLVAR(Ipreambleav, AV *) PERLVARI(Ilaststatval, int, -1) PERLVARI(Ilaststype, I32, OP_STAT) @@ -202,8 +202,8 @@ PERLVAR(Imodglobal, HV *) /* per-interp module data */ /* these used to be in global before 5.004_68 */ PERLVARI(Iprofiledata, U32 *, NULL) /* table of ops, counts */ -PERLVARI(Irsfp, PerlIO * VOL, Nullfp) /* current source file pointer */ -PERLVARI(Irsfp_filters, AV *, Nullav) /* keeps active source filters */ +PERLVARI(Irsfp, PerlIO * VOL, NULL) /* current source file pointer */ +PERLVARI(Irsfp_filters, AV *, NULL) /* keeps active source filters */ PERLVAR(Icompiling, COP) /* compiling/done executing marker */ @@ -226,8 +226,6 @@ PERLVARI(Iin_clean_objs,bool, FALSE) /* from sv.c */ PERLVARI(Iin_clean_all, bool, FALSE) /* from sv.c */ PERLVAR(Ilinestart, char *) /* beg. of most recently read line */ -PERLVAR(Ipending_ident, char) /* pending identifier lookup */ -PERLVAR(Isublex_info, SUBLEXINFO) /* from toke.c */ PERLVAR(Iuid, Uid_t) /* current real user id */ PERLVAR(Ieuid, Uid_t) /* current effective user id */ @@ -247,13 +245,8 @@ PERLVAR(Iosname, char *) /* operating system */ PERLVAR(Isighandlerp, Sighandler_t) -PERLVARA(Ibody_roots, SVt_LAST, void*) /* array of body roots */ +PERLVARA(Ibody_roots, PERL_ARENA_ROOTS_SIZE, void*) /* array of body roots */ -PERLVAR(Ihe_root, HE *) /* free he list */ - -#if defined(USE_ITHREADS) -PERLVAR(Ipte_root, struct ptr_tbl_ent *) /* free ptr_tbl_ent list */ -#endif PERLVAR(Inice_chunk, char *) /* a nice chunk of memory to reuse */ PERLVAR(Inice_chunk_size, U32) /* how nice the chunk of memory is */ @@ -286,25 +279,16 @@ PERLVARI(Icshlen, I32, 0) #endif PERLVAR(Ilex_state, U32) /* next token is determined */ -PERLVAR(Ilex_defer, U32) /* state after determined token */ -PERLVAR(Ilex_expect, int) /* expect after determined token */ -PERLVAR(Ilex_brackets, I32) /* bracket count */ -PERLVAR(Ilex_formbrack, I32) /* bracket count at outer format level */ -PERLVAR(Ilex_casemods, I32) /* casemod count */ -PERLVAR(Ilex_dojoin, I32) /* doing an array interpolation */ -PERLVAR(Ilex_starts, I32) /* how many interps done on level */ -PERLVAR(Ilex_stuff, SV *) /* runtime pattern from m// or s/// */ -PERLVAR(Ilex_repl, SV *) /* runtime replacement from s/// */ -PERLVAR(Ilex_op, OP *) /* extra info to pass back on op */ -PERLVAR(Ilex_inpat, OP *) /* in pattern $) and $| are special */ -PERLVAR(Ilex_inwhat, I32) /* what kind of quoting are we in */ -PERLVAR(Ilex_brackstack,char *) /* what kind of brackets to pop */ -PERLVAR(Ilex_casestack, char *) /* what kind of case mods in effect */ /* What we know when we're in LEX_KNOWNEXT state. */ +#ifdef PERL_MAD +PERLVARA(Inexttoke,5, NEXTTOKE) /* value of next token, if any */ +PERLVAR(Icurforce, I32) +#else PERLVARA(Inextval,5, YYSTYPE) /* value of next token, if any */ PERLVARA(Inexttype,5, I32) /* type of next token */ PERLVAR(Inexttoke, I32) +#endif PERLVAR(Ilinestr, SV *) PERLVAR(Ibufptr, char *) @@ -313,10 +297,7 @@ PERLVAR(Ioldoldbufptr, char *) PERLVAR(Ibufend, char *) PERLVARI(Iexpect,int, XSTATE) /* how to interpret ambiguous tokens */ -PERLVAR(Imulti_start, I32) /* 1st line of multi-line string */ PERLVAR(Imulti_end, I32) /* last line of multi-line string */ -PERLVAR(Imulti_open, I32) /* delimiter of said string */ -PERLVAR(Imulti_close, I32) /* delimiter of said string */ PERLVAR(Ierror_count, I32) /* how many errors so far, max 10 */ PERLVAR(Isubline, I32) /* line this subroutine began on */ @@ -389,9 +370,7 @@ PERLVARA(Ilast_swash_key,10, U8) PERLVAR(Ilast_swash_tmps, U8 *) PERLVAR(Ilast_swash_slen, STRLEN) -/* perly.c globals */ -PERLVAR(Iyycharp, int *) -PERLVAR(Iyylvalp, YYSTYPE *) +PERLVAR(Iparser, yy_parser *) /* current parser state */ PERLVARI(Iglob_index, int, 0) PERLVAR(Isrand_called, bool) @@ -413,18 +392,10 @@ PERLVAR(ISock, struct IPerlSock*) PERLVAR(IProc, struct IPerlProc*) #endif -#if defined(USE_ITHREADS) PERLVAR(Iptr_table, PTR_TBL_t*) -#endif -PERLVARI(Ibeginav_save, AV*, Nullav) /* save BEGIN{}s when compiling */ +PERLVARI(Ibeginav_save, AV*, NULL) /* save BEGIN{}s when compiling */ -PERLVARA(Ibody_arenaroots, SVt_LAST, void*) /* consolidated body-arena pointers */ - -PERLVAR(Ihe_arenaroot, HE *) /* list of allocated he areas */ -#if defined(USE_ITHREADS) -PERLVAR(Ipte_arenaroot, struct ptr_tbl_ent *) /* list of allocated pte areas */ - -#endif +PERLVAR(Ibody_arenas, void*) /* pointer to list of body-arenas */ /* 5.6.0 stopped here */ @@ -449,6 +420,12 @@ PERLVAR(Ireentrant_buffer, REENTR*) /* here we store the _r buffers */ PERLVARI(Isavebegin, bool, FALSE) /* save BEGINs for compiler */ +#ifdef PERL_MAD +PERLVARI(Imadskills, bool, FALSE) /* preserve all syntactic info */ + /* (MAD = Misc Attribute Decoration) */ +PERLVARI(Ixmlfp, PerlIO *,NULL) +#endif + PERLVAR(Icustom_op_names, HV*) /* Names of user defined ops */ PERLVAR(Icustom_op_descs, HV*) /* Descriptions of user defined ops */ @@ -458,7 +435,7 @@ PERLVARI(Iknown_layers, PerlIO_list_t *,NULL) PERLVARI(Idef_layerlist, PerlIO_list_t *,NULL) #endif -PERLVARI(Iencoding, SV*, Nullsv) /* character encoding */ +PERLVARI(Iencoding, SV*, NULL) /* character encoding */ PERLVAR(Idebug_pad, struct perl_debug_pad) /* always needed because of the re extension */ @@ -477,7 +454,8 @@ PERLVAR(Iutf8_idcont, SV *) PERLVAR(Isort_RealCmp, SVCOMPARE_t) -PERLVARI(Icheckav_save, AV*, Nullav) /* save CHECK{}s when compiling */ +PERLVARI(Icheckav_save, AV*, NULL) /* save CHECK{}s when compiling */ +PERLVARI(Iunitcheckav_save, AV*, NULL) /* save UNITCHECK{}s when compiling */ PERLVARI(Iclocktick, long, 0) /* this many times() ticks in a second */ @@ -494,7 +472,14 @@ PERLVAR(Ireentrant_retint, int) /* Integer return value from reentrant functions /* Hooks to shared SVs and locks. */ PERLVARI(Isharehook, share_proc_t, MEMBER_TO_FPTR(Perl_sv_nosharing)) PERLVARI(Ilockhook, share_proc_t, MEMBER_TO_FPTR(Perl_sv_nosharing)) -PERLVARI(Iunlockhook, share_proc_t, MEMBER_TO_FPTR(Perl_sv_nosharing)) +#ifdef NO_MATHOMS +# define PERL_UNLOCK_HOOK Perl_sv_nosharing +#else +/* This reference ensures that the mathoms are linked with perl */ +# define PERL_UNLOCK_HOOK Perl_sv_nounlocking +#endif +PERLVARI(Iunlockhook, share_proc_t, MEMBER_TO_FPTR(PERL_UNLOCK_HOOK)) + PERLVARI(Ithreadhook, thrhook_proc_t, MEMBER_TO_FPTR(Perl_nothreadhook)) /* Force inclusion of both runops options */ @@ -518,15 +503,30 @@ PERLVARI(Irehash_seed, UV, 0) /* 582 hash initializer */ PERLVARI(Irehash_seed_set, bool, FALSE) /* 582 hash initialized? */ -/* These two variables are needed to preserve 5.8.x bincompat because we can't - change function prototypes of two exported functions. Probably should be - taken out of blead soon, and relevant prototypes changed. */ -PERLVARI(Ifdscript, int, -1) /* fd for script */ -PERLVARI(Isuidscript, int, -1) /* fd for suid script */ #ifdef DEBUG_LEAKING_SCALARS_FORK_DUMP /* File descriptor to talk to the child which dumps scalars. */ PERLVARI(Idumper_fd, int, -1) #endif + +#ifdef PERL_IMPLICIT_CONTEXT +PERLVARI(Imy_cxt_size, int, 0) /* size of PL_my_cxt_list */ +PERLVARI(Imy_cxt_list, void **, NULL) /* per-module array of MY_CXT pointers */ +#ifdef PERL_GLOBAL_STRUCT_PRIVATE +PERLVARI(Imy_cxt_keys, const char **, NULL) /* per-module array of pointers to MY_CXT_KEY constants */ +#endif +#endif + +#ifdef PERL_TRACK_MEMPOOL +/* For use with the memory debugging code in util.c */ +PERLVAR(Imemory_debug_header, struct perl_memory_debug_header) +#endif + +#ifdef PERL_UTF8_CACHE_ASSERT +PERLVARI(Iutf8cache, I8, -1) /* Is the utf8 caching code enabled? */ +#else +PERLVARI(Iutf8cache, I8, 1) /* Is the utf8 caching code enabled? */ +#endif + /* New variables must be added to the very end, before this comment, * for binary compatibility (the offsets of the old members must not change). * (Don't forget to add your variable also to perl_clone()!)