* and how they're initialized.
*
* The 'G' prefix is only needed for vars that need appropriate #defines
- * generated when built with or without EMBED. It is also used to generate
+ * 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,
PERLVAR(Gcurthr, struct perl_thread *)
/* Currently executing (fake) thread */
#endif
+
+PERLVAR(Gcred_mutex, perl_mutex) /* altered credentials in effect */
+
#endif /* USE_THREADS */
PERLVAR(Gninterps, int) /* number of active interpreters */
PERLVAR(Gnice_chunk, char *) /* a nice chunk of memory to reuse */
PERLVAR(Gnice_chunk_size, U32) /* how nice the chunk of memory is */
-#ifdef PERL_OBJECT
PERLVARI(Grunops, runops_proc_t, FUNC_NAME_TO_PTR(RUNOPS_DEFAULT))
-#else
-PERLVARI(Grunops, runops_proc_t *, RUNOPS_DEFAULT)
-#endif
PERLVAR(Gtokenbuf[256], char)
-PERLVAR(Gna, STRLEN) /* for use in SvPV when length is
- Not Applicable */
PERLVAR(Gsv_undef, SV)
PERLVAR(Gsv_no, SV)
PERLVAR(Glast_uni, char *) /* position of last named-unary op */
PERLVAR(Glast_lop, char *) /* position of last list operator */
PERLVAR(Glast_lop_op, OPCODE) /* last list operator */
-PERLVAR(Gin_my, bool) /* we're compiling a "my" declaration */
+PERLVAR(Gin_my, bool) /* we're compiling a "my" declaration */
PERLVAR(Gin_my_stash, HV *) /* declared class of this "my" declaration */
#ifdef FCRYPT
PERLVAR(Gcryptseen, I32) /* has fast crypt() been initialized? */
PERLVAR(Ghints, U32) /* pragma-tic compile-time flags */
-PERLVAR(Gdo_undump, bool) /* -u or dump seen? */
+PERLVARI(Gdo_undump, bool, FALSE) /* -u or dump seen? */
PERLVAR(Gdebug, VOL U32) /* flags given to -D switch */
-
-#ifdef OVERLOAD
-
PERLVAR(Gamagic_generation, long)
-#endif
-
#ifdef USE_LOCALE_COLLATE
PERLVAR(Gcollation_ix, U32) /* Collation generation index */
PERLVAR(Gcollation_name,char *) /* Name of current collation */
#endif /* !USE_LOCALE_NUMERIC */
+/* utf8 character classes */
+PERLVAR(Gutf8_alnum, SV *)
+PERLVAR(Gutf8_alpha, SV *)
+PERLVAR(Gutf8_space, SV *)
+PERLVAR(Gutf8_digit, SV *)
+PERLVAR(Gutf8_upper, SV *)
+PERLVAR(Gutf8_lower, SV *)
+PERLVAR(Gutf8_print, SV *)
+PERLVAR(Gutf8_mark, SV *)
+PERLVAR(Gutf8_toupper, SV *)
+PERLVAR(Gutf8_totitle, SV *)
+PERLVAR(Gutf8_tolower, SV *)
+PERLVAR(Glast_swash_hv, HV *)
+PERLVAR(Glast_swash_klen, U32)
+PERLVAR(Glast_swash_key[10], U8)
+PERLVAR(Glast_swash_tmps, U8 *)
+PERLVAR(Glast_swash_slen, STRLEN)
+
/* constants (these are not literals to facilitate pointer comparisons) */
PERLVARIC(GYes, char *, "1")
PERLVARIC(GNo, char *, "")
-PERLVARIC(Ghexdigit, char *, "0123456789abcdef0123456789ABCDEFx")
+PERLVARIC(Ghexdigit, char *, "0123456789abcdef0123456789ABCDEF")
PERLVARIC(Gpatleave, char *, "\\.^$@dDwWsSbB+*?|()-nrtfeaxc0123456789[{]}")
PERLVAR(Gspecialsv_list[4],SV *) /* from byterun.h */
+/* perly.c globals */
+PERLVAR(Gyydebug, int)
+PERLVAR(Gyynerrs, int)
+PERLVAR(Gyyerrflag, int)
+PERLVAR(Gyychar, int)
+PERLVAR(Gyyval, YYSTYPE)
+PERLVAR(Gyylval, YYSTYPE)
+
+PERLVAR(Gglob_index, int)
+PERLVAR(Gefloatbuf, char*)
+PERLVAR(Gefloatsize, STRLEN)
+PERLVAR(Gsrand_called, bool)
+PERLVAR(Guudmap[256], char)
+PERLVAR(Gbitcount, char *)
+PERLVAR(Gfilter_debug, int)
+