X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=intrpvar.h;h=61d48a29885120036b34b6862c3a67a946113896;hb=5c728af092d5febae92774d9106a235643cb49e5;hp=4486d2f636debe5f193091585c884f25125d3144;hpb=238a4c30b3724d314933955c5c4a0162eae05ee0;p=p5sagit%2Fp5-mst-13.2.git diff --git a/intrpvar.h b/intrpvar.h index 4486d2f..61d48a2 100644 --- a/intrpvar.h +++ b/intrpvar.h @@ -8,6 +8,8 @@ * XSUB.h provides wrapper functions via perlapi.h that make this * irrelevant, but not all code may be expected to #include XSUB.h. */ +/* Don't forget to add your variable also to perl_clone()! */ + /* The 'I' prefix is only needed for vars that need appropriate #defines * generated when built with or without MULTIPLICITY. It is also used * to generate the appropriate export list for win32. @@ -48,7 +50,7 @@ The C variable which corresponds to Perl's $^W warning variable. */ PERLVAR(Idowarn, U8) -PERLVAR(Iwidesyscalls, bool) /* wide system calls */ +PERLVAR(Iwidesyscalls, bool) /* unused since 5.8.1 */ PERLVAR(Idoextract, bool) PERLVAR(Isawampersand, bool) /* must save all match strings */ PERLVAR(Iunsafe, bool) @@ -226,12 +228,6 @@ PERLVAR(Ilinestart, char *) /* beg. of most recently read line */ PERLVAR(Ipending_ident, char) /* pending identifier lookup */ PERLVAR(Isublex_info, SUBLEXINFO) /* from toke.c */ -#ifdef USE_5005THREADS -PERLVAR(Ithrsv, SV *) /* struct perl_thread for main thread */ -PERLVARI(Ithreadnum, U32, 0) /* incremented each thread creation */ -PERLVAR(Istrtab_mutex, perl_mutex) /* Mutex for string table access */ -#endif /* USE_5005THREADS */ - PERLVAR(Iuid, Uid_t) /* current real user id */ PERLVAR(Ieuid, Uid_t) /* current effective user id */ PERLVAR(Igid, Gid_t) /* current real group id */ @@ -246,7 +242,10 @@ PERLVAR(Iorigalen, U32) PERLVAR(Ipidstatus, HV *) /* pid-to-status mappings for waitpid */ PERLVARI(Imaxo, int, MAXO) /* maximum number of ops */ PERLVAR(Iosname, char *) /* operating system */ -PERLVARI(Ish_path, char *, SH_PATH)/* full path of shell */ + +/* For binary compatibility with older versions only */ +PERLVARI(Ish_path_compat, char *, SH_PATH)/* full path of shell */ + PERLVAR(Isighandlerp, Sighandler_t) PERLVAR(Ixiv_arenaroot, XPV*) /* list of allocated xiv areas */ @@ -411,26 +410,6 @@ PERLVAR(Isrand_called, bool) PERLVARA(Iuudmap,256, char) PERLVAR(Ibitcount, char *) -#ifdef USE_5005THREADS -PERLVAR(Isv_mutex, perl_mutex) /* Mutex for allocating SVs in sv.c */ -PERLVAR(Ieval_mutex, perl_mutex) /* Mutex for doeval */ -PERLVAR(Ieval_cond, perl_cond) /* Condition variable for doeval */ -PERLVAR(Ieval_owner, struct perl_thread *) - /* Owner thread for doeval */ -PERLVAR(Inthreads, int) /* Number of threads currently */ -PERLVAR(Ithreads_mutex, perl_mutex) /* Mutex for nthreads and thread list */ -PERLVAR(Inthreads_cond, perl_cond) /* Condition variable for nthreads */ -PERLVAR(Isvref_mutex, perl_mutex) /* Mutex for SvREFCNT_{inc,dec} */ -PERLVARI(Ithreadsv_names,char *, THREADSV_NAMES) -#ifdef FAKE_THREADS -PERLVAR(Icurthr, struct perl_thread *) - /* Currently executing (fake) thread */ -#endif - -PERLVAR(Icred_mutex, perl_mutex) /* altered credentials in effect */ - -#endif /* USE_5005THREADS */ - PERLVAR(Ipsig_ptr, SV**) PERLVAR(Ipsig_name, SV**) @@ -451,13 +430,6 @@ PERLVAR(Iptr_table, PTR_TBL_t*) #endif PERLVARI(Ibeginav_save, AV*, Nullav) /* save BEGIN{}s when compiling */ -#ifdef USE_5005THREADS -PERLVAR(Ifdpid_mutex, perl_mutex) /* mutex for fdpid array */ -PERLVAR(Isv_lock_mutex, perl_mutex) /* mutex for SvLOCK macro */ -#endif - -PERLVAR(Inullstash, HV *) /* illegal symbols end up here */ - PERLVAR(Ixnv_arenaroot, XPV*) /* list of allocated xnv areas */ PERLVAR(Ixrv_arenaroot, XPV*) /* list of allocated xrv areas */ PERLVAR(Ixpv_arenaroot, XPV*) /* list of allocated xpv areas */ @@ -487,12 +459,9 @@ PERLVAR(Iregex_pad, SV**) /* All regex objects */ PERLVAR(Iregex_padav, AV*) /* All regex objects */ #ifdef USE_REENTRANT_API -PERLVAR(Ireentrant_buffer, REBUF*) /* here we store the _r buffers */ +PERLVAR(Ireentrant_buffer, REENTR*) /* here we store the _r buffers */ #endif -PERLVAR(sharedsv_space, PerlInterpreter*) -PERLVAR(sharedsv_space_mutex, perl_mutex) - #endif PERLVAR(Isavebegin, bool) /* save BEGINs for compiler */ @@ -513,12 +482,34 @@ PERLVAR(Idebug_pad, struct perl_debug_pad) /* always needed because of the re ex PERLVAR(Itaint_warn, bool) /* taint warns instead of dying */ #ifdef PL_OP_SLAB_ALLOC -PERLVAR(IOpPtr,IV **) -PERLVARI(IOpSpace,int,0) -PERLVAR(IOpSlab,IV *) +PERLVAR(IOpPtr,I32 **) +PERLVARI(IOpSpace,I32,0) +PERLVAR(IOpSlab,I32 *) #endif -/* New variables must be added to the very end for binary compatibility. +PERLVAR(Iutf8locale, bool) /* utf8 locale detected */ + +PERLVAR(Iutf8_idstart, SV *) +PERLVAR(Iutf8_idcont, SV *) + +PERLVAR(Isort_RealCmp, SVCOMPARE_t) + +PERLVARI(Icheckav_save, AV*, Nullav) /* save CHECK{}s when compiling */ + +PERLVARI(Iclocktick, long, 0) /* this many times() ticks in a second */ + +PERLVARI(Iin_load_module, int, 0) /* to prevent recursions in PerlIO_find_layer */ + +PERLVAR(Iunicode, U32) /* Unicode features: $ENV{PERL_UNICODE} or -C */ + +PERLVAR(Isignals, U32) /* Using which pre-5.8 signals */ + +PERLVAR(IDBassertion, SV *) + +/* Don't forget to add your variable also to perl_clone()! */ + +/* New variables must be added to the very end, before this comment, + * for binary compatibility (the offsets of the old members must not change). * XSUB.h provides wrapper functions via perlapi.h that make this * irrelevant, but not all code may be expected to #include XSUB.h. */