X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/c44286936652fb6ed452d349e29e4cd965ea1707..f6e46c4d409677cc231d5d772d21f912a6dc454a:/intrpvar.h diff --git a/intrpvar.h b/intrpvar.h index 09154b7..94b7425 100644 --- a/intrpvar.h +++ b/intrpvar.h @@ -17,11 +17,9 @@ * Don't forget to re-run regen/embed.pl to propagate changes! */ -/* New variables must be added to the very end for binary compatibility. - * XSUB.h provides wrapper functions via perlapi.h that make this - * irrelevant, but not all code may be expected to #include XSUB.h. */ +/* New variables must be added to the very end for binary compatibility. */ -/* Don't forget to add your variable also to perl_clone()! */ +/* Don't forget to add your variable also to perl_clone()! (in sv.c) */ /* The 'I' prefix is only needed for vars that need appropriate #defines * generated when built with or without MULTIPLICITY. It is also used @@ -229,8 +227,6 @@ When you replace this variable, it is considered a good practice to store the po PERLVARI(I, opfreehook, Perl_ophook_t, 0) /* op_free() hook */ -/* Space for U32 */ -PERLVARI(I, reginterp_cnt,I32, 0) /* Whether "Regexp" was interpolated. */ PERLVARI(I, watchaddr, char **, 0) PERLVAR(I, watchok, char *) @@ -296,12 +292,10 @@ The C variable which corresponds to Perl's $^W warning variable. */ PERLVAR(I, dowarn, U8) -PERLVAR(I, sawampersand, bool) /* must save all match strings */ +PERLVAR(I, sawampersand, U8) /* must save all match strings */ PERLVAR(I, unsafe, bool) PERLVAR(I, exit_flags, U8) /* was exit() unexpected, etc. */ -PERLVAR(I, srand_called, bool) -PERLVARI(I, in_load_module, bool, FALSE) /* to prevent recursions in PerlIO_find_layer */ - /* Space for a U16 */ + PERLVAR(I, inplace, char *) PERLVAR(I, e_script, SV *) @@ -449,8 +443,8 @@ PERLVARI(I, profiledata, U32 *, NULL) /* table of ops, counts */ PERLVAR(I, compiling, COP) /* compiling/done executing marker */ PERLVAR(I, compcv, CV *) /* currently compiling subroutine */ -PERLVAR(I, comppad, AV *) /* storage for lexically scoped temporaries */ -PERLVAR(I, comppad_name, AV *) /* variable names for "my" variables */ +PERLVAR(I, comppad, PAD *) /* storage for lexically scoped temporaries */ +PERLVAR(I, comppad_name, PADNAMELIST *) /* variable names for "my" variables */ PERLVAR(I, comppad_name_fill, I32) /* last "introduced" variable offset */ PERLVAR(I, comppad_name_floor, I32) /* start of vars in innermost block */ @@ -468,10 +462,10 @@ PERLVARI(I, in_clean_all, bool, FALSE) /* ptrs to freed SVs now legal */ PERLVAR(I, nomemok, bool) /* let malloc context handle nomem */ PERLVARI(I, savebegin, bool, FALSE) /* save BEGINs for compiler */ -PERLVAR(I, uid, Uid_t) /* current real user id */ -PERLVAR(I, euid, Uid_t) /* current effective user id */ -PERLVAR(I, gid, Gid_t) /* current real group id */ -PERLVAR(I, egid, Gid_t) /* current effective group id */ +PERLVAR(I, delaymagic_uid, Uid_t) /* current real user id, only for delaymagic */ +PERLVAR(I, delaymagic_euid, Uid_t) /* current effective user id, only for delaymagic */ +PERLVAR(I, delaymagic_gid, Gid_t) /* current real group id, only for delaymagic */ +PERLVAR(I, delaymagic_egid, Gid_t) /* current effective group id, only for delaymagic */ PERLVARI(I, an, U32, 0) /* malloc sequence number */ #ifdef DEBUGGING @@ -537,8 +531,6 @@ PERLVAR(I, debug, VOL U32) /* flags given to -D switch */ /* Perl_Ibreakable_sub_generation_ptr was too long for VMS, hence "gen" */ PERLVARI(I, breakable_sub_gen, U32, 0) -PERLVARI(I, amagic_generation, long, 0) - #ifdef USE_LOCALE_COLLATE PERLVAR(I, collation_name, char *) /* Name of current collation */ PERLVAR(I, collxfrm_base, Size_t) /* Basic overhead in *xfrm() */ @@ -569,11 +561,63 @@ PERLVAR(I, numeric_radix_sv, SV *) /* The radix separator if not '.' */ #endif /* !USE_LOCALE_NUMERIC */ -/* utf8 character classes */ +/* Unicode inversion lists */ +PERLVAR(I, ASCII, SV *) +PERLVAR(I, Latin1, SV *) +PERLVAR(I, AboveLatin1, SV *) + +PERLVAR(I, PerlSpace, SV *) +PERLVAR(I, XPerlSpace, SV *) + +PERLVAR(I, L1PosixAlnum,SV *) +PERLVAR(I, PosixAlnum, SV *) + +PERLVAR(I, L1PosixAlpha,SV *) +PERLVAR(I, PosixAlpha, SV *) + +PERLVAR(I, PosixBlank, SV *) +PERLVAR(I, XPosixBlank, SV *) + +PERLVAR(I, L1Cased, SV *) + +PERLVAR(I, PosixCntrl, SV *) +PERLVAR(I, XPosixCntrl, SV *) + +PERLVAR(I, PosixDigit, SV *) + +PERLVAR(I, L1PosixGraph,SV *) +PERLVAR(I, PosixGraph, SV *) + +PERLVAR(I, L1PosixLower,SV *) +PERLVAR(I, PosixLower, SV *) + +PERLVAR(I, L1PosixPrint,SV *) +PERLVAR(I, PosixPrint, SV *) + +PERLVAR(I, L1PosixPunct,SV *) +PERLVAR(I, PosixPunct, SV *) + +PERLVAR(I, PosixSpace, SV *) +PERLVAR(I, XPosixSpace, SV *) + +PERLVAR(I, L1PosixUpper,SV *) +PERLVAR(I, PosixUpper, SV *) + +PERLVAR(I, L1PosixWord, SV *) +PERLVAR(I, PosixWord, SV *) + +PERLVAR(I, PosixXDigit, SV *) +PERLVAR(I, XPosixXDigit, SV *) + +PERLVAR(I, VertSpace, SV *) + +PERLVAR(I, NonL1NonFinalFold, SV *) + +/* utf8 character class swashes */ PERLVAR(I, utf8_alnum, SV *) PERLVAR(I, utf8_alpha, SV *) +PERLVAR(I, utf8_blank, SV *) PERLVAR(I, utf8_space, SV *) -PERLVAR(I, utf8_cntrl, SV *) PERLVAR(I, utf8_graph, SV *) PERLVAR(I, utf8_digit, SV *) PERLVAR(I, utf8_upper, SV *) @@ -582,13 +626,13 @@ PERLVAR(I, utf8_print, SV *) PERLVAR(I, utf8_punct, SV *) PERLVAR(I, utf8_xdigit, SV *) PERLVAR(I, utf8_mark, SV *) -PERLVAR(I, utf8_X_begin, SV *) +PERLVAR(I, utf8_X_regular_begin, SV *) PERLVAR(I, utf8_X_extend, SV *) PERLVAR(I, utf8_X_prepend, SV *) -PERLVAR(I, utf8_X_non_hangul, SV *) +PERLVAR(I, utf8_X_special_begin, SV *) PERLVAR(I, utf8_X_L, SV *) -PERLVAR(I, utf8_X_LV, SV *) PERLVAR(I, utf8_X_LVT, SV *) +PERLVAR(I, utf8_X_RI, SV *) PERLVAR(I, utf8_X_T, SV *) PERLVAR(I, utf8_X_V, SV *) PERLVAR(I, utf8_X_LV_LVT_V, SV *) @@ -596,20 +640,20 @@ PERLVAR(I, utf8_toupper, SV *) PERLVAR(I, utf8_totitle, SV *) PERLVAR(I, utf8_tolower, SV *) PERLVAR(I, utf8_tofold, SV *) +PERLVAR(I, utf8_quotemeta, SV *) PERLVAR(I, last_swash_hv, HV *) PERLVAR(I, last_swash_tmps, U8 *) PERLVAR(I, last_swash_slen, STRLEN) -PERLVARA(I, last_swash_key,10, U8) -PERLVAR(I, last_swash_klen, U8) /* Only needs to store 0-10 */ +PERLVARA(I, last_swash_key,12, U8) +PERLVAR(I, last_swash_klen, U8) /* Only needs to store 0-12 */ #ifdef FCRYPT PERLVARI(I, cryptseen, bool, FALSE) /* has fast crypt() been initialized? */ #endif PERLVAR(I, pad_reset_pending, bool) /* reset pad on next attempted alloc */ - -PERLVARI(I, glob_index, int, 0) - +PERLVAR(I, srand_called, bool) +PERLVARI(I, in_load_module, bool, FALSE) /* to prevent recursions in PerlIO_find_layer */ PERLVAR(I, parser, yy_parser *) /* current parser state */ @@ -647,6 +691,9 @@ PERLVAR(I, regex_padav, AV *) /* All regex objects, indexed via the Entry 0 is an SV whose PV is a "packed" list of IVs listing the now-free slots in the array */ +PERLVAR(I, stashpad, HV **) /* for CopSTASH */ +PERLVARI(I, stashpadmax, PADOFFSET, 64) +PERLVARI(I, stashpadix, PADOFFSET, 0) #endif #ifdef USE_REENTRANT_API @@ -669,6 +716,7 @@ PERLVAR(I, debug_pad, struct perl_debug_pad) /* always needed because of the re PERLVAR(I, utf8_idstart, SV *) PERLVAR(I, utf8_idcont, SV *) PERLVAR(I, utf8_xidstart, SV *) +PERLVAR(I, utf8_perl_idstart, SV *) PERLVAR(I, utf8_xidcont, SV *) PERLVAR(I, sort_RealCmp, SVCOMPARE_t) @@ -726,6 +774,11 @@ PERLVARI(I, utf8_foldable, SV *, NULL) PERLVAR(I, custom_ops, HV *) /* custom op registrations */ +/* Hook for File::Glob */ +PERLVARI(I, globhook, globhook_t, NULL) + +PERLVARI(I, glob_index, int, 0) +PERLVARI(I, padlist_generation, U32, 1) /* id to identify padlist clones */ PERLVAR(I, reentrant_retint, int) /* Integer return value from reentrant functions */ /* The last unconditional member of the interpreter structure when 5.10.0 was @@ -735,8 +788,8 @@ PERLVAR(I, reentrant_retint, int) /* Integer return value from reentrant functio #define PERL_LAST_5_16_0_INTERP_MEMBER Ireentrant_retint #ifdef PERL_IMPLICIT_CONTEXT -PERLVARI(I, my_cxt_size, int, 0) /* size of PL_my_cxt_list */ PERLVARI(I, my_cxt_list, void **, NULL) /* per-module array of MY_CXT pointers */ +PERLVARI(I, my_cxt_size, int, 0) /* size of PL_my_cxt_list */ # ifdef PERL_GLOBAL_STRUCT_PRIVATE PERLVARI(I, my_cxt_keys, const char **, NULL) /* per-module array of pointers to MY_CXT_KEY constants */ # endif @@ -752,28 +805,12 @@ PERLVAR(I, memory_debug_header, struct perl_memory_debug_header) PERLVARI(I, dumper_fd, int, -1) #endif -/* Stores the PPID */ -#ifdef THREADS_HAVE_PIDS -PERLVARI(I, ppid, IV, 0) -#endif - #ifdef PERL_MAD PERLVARI(I, madskills, bool, FALSE) /* preserve all syntactic info */ /* (MAD = Misc Attribute Decoration) */ PERLVARI(I, xmlfp, PerlIO *, NULL) #endif -#ifdef PL_OP_SLAB_ALLOC -PERLVAR(I, OpPtr, I32 **) -PERLVARI(I, OpSpace, I32, 0) -PERLVAR(I, OpSlab, I32 *) -#endif - -#ifdef PERL_DEBUG_READONLY_OPS -PERLVARI(I, slabs, I32**, NULL) /* Array of slabs that have been allocated */ -PERLVARI(I, slab_count, U32, 0) /* Size of the array */ -#endif - #ifdef DEBUG_LEAKING_SCALARS PERLVARI(I, sv_serial, U32, 0) /* SV serial number, used in sv.c */ #endif