X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=perlvars.h;h=27f76ebb8d34aff353c3d346979b6d8c9b0a02c5;hb=0384d2fffd4e9480d75fd2afa397b45866ec8ac8;hp=85ff7515bd5d6c0c93562f3371dd28e7f0f5891f;hpb=70df91df9052c5a7ec17f2851bfb85a77db45a94;p=p5sagit%2Fp5-mst-13.2.git diff --git a/perlvars.h b/perlvars.h index 85ff751..27f76eb 100644 --- a/perlvars.h +++ b/perlvars.h @@ -1,3 +1,12 @@ +/* perlvars.h + * + * Copyright (C) 1999, 2000, 2001, 2002, by Larry Wall and others + * + * You may distribute under the terms of either the GNU General Public + * License or the Artistic License, as specified in the README file. + * + */ + /****************/ /* Truly global */ /****************/ @@ -11,16 +20,16 @@ * * The 'G' prefix is only needed for vars that need appropriate #defines * generated in embed*.h. Such symbols are also used to generate - * the appropriate export list for win32. - * - * Avoid build-specific #ifdefs here, like DEBUGGING. That way, - * we can keep binary compatibility of the curinterp structure */ - + * the appropriate export list for win32. */ /* global state */ PERLVAR(Gcurinterp, PerlInterpreter *) /* currently running interpreter - * XXX this needs to be in TLS */ + * (initial parent interpreter under + * useithreads) */ +#if defined(USE_ITHREADS) +PERLVAR(Gthr_key, perl_key) /* key to retrieve per-thread struct */ +#endif /* constants (these are not literals to facilitate pointer comparisons) */ PERLVARIC(GYes, char *, "1") @@ -31,6 +40,20 @@ PERLVARIC(Gpatleave, char *, "\\.^$@dDwWsSbB+*?|()-nrtfeaxc0123456789[{]}") /* XXX does anyone even use this? */ PERLVARI(Gdo_undump, bool, FALSE) /* -u or dump seen? */ -#if defined(MYMALLOC) && defined(USE_THREADS) +#if defined(MYMALLOC) && defined(USE_ITHREADS) PERLVAR(Gmalloc_mutex, perl_mutex) /* Mutex for malloc */ #endif + +#if defined(USE_ITHREADS) +PERLVAR(Gop_mutex, perl_mutex) /* Mutex for op refcounting */ +#endif + +#ifdef USE_ITHREADS +PERLVAR(Gdollarzero_mutex, perl_mutex) /* Modifying $0 */ +#endif + +/* This is constant on most architectures, a global on OS/2 */ +PERLVARI(Gsh_path, char *, SH_PATH)/* full path of shell */ + +PERLVAR(Gearlytaint, bool) /* Early warning for taint, before PL_tainting is set */ +