This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Latch LC_NUMERIC during critical sections
[perl5.git] / embedvar.h
index c2831d6..d8b09fe 100644 (file)
@@ -41,8 +41,7 @@
 #  endif
 
 #define PL_AboveLatin1         (vTHX->IAboveLatin1)
-#define PL_Argv                        (vTHX->IArgv)
-#define PL_Cmd                 (vTHX->ICmd)
+#define PL_Assigned_invlist    (vTHX->IAssigned_invlist)
 #define PL_DBcontrol           (vTHX->IDBcontrol)
 #define PL_DBcv                        (vTHX->IDBcv)
 #define PL_DBgv                        (vTHX->IDBgv)
@@ -63,9 +62,9 @@
 #define PL_MemParse            (vTHX->IMemParse)
 #define PL_MemShared           (vTHX->IMemShared)
 #define PL_NonL1NonFinalFold   (vTHX->INonL1NonFinalFold)
-#define PL_Posix_ptrs          (vTHX->IPosix_ptrs)
 #define PL_Proc                        (vTHX->IProc)
 #define PL_SB_invlist          (vTHX->ISB_invlist)
+#define PL_SCX_invlist         (vTHX->ISCX_invlist)
 #define PL_Sock                        (vTHX->ISock)
 #define PL_StdIO               (vTHX->IStdIO)
 #define PL_Sv                  (vTHX->ISv)
 #define PL_curcopdb            (vTHX->Icurcopdb)
 #define PL_curpad              (vTHX->Icurpad)
 #define PL_curpm               (vTHX->Icurpm)
+#define PL_curpm_under         (vTHX->Icurpm_under)
 #define PL_curstack            (vTHX->Icurstack)
 #define PL_curstackinfo                (vTHX->Icurstackinfo)
 #define PL_curstash            (vTHX->Icurstash)
 #define PL_e_script            (vTHX->Ie_script)
 #define PL_efloatbuf           (vTHX->Iefloatbuf)
 #define PL_efloatsize          (vTHX->Iefloatsize)
-#define PL_encoding            (vTHX->Iencoding)
 #define PL_endav               (vTHX->Iendav)
 #define PL_envgv               (vTHX->Ienvgv)
 #define PL_errgv               (vTHX->Ierrgv)
 #define PL_incgv               (vTHX->Iincgv)
 #define PL_initav              (vTHX->Iinitav)
 #define PL_inplace             (vTHX->Iinplace)
+#define PL_internal_random_state       (vTHX->Iinternal_random_state)
 #define PL_isarev              (vTHX->Iisarev)
 #define PL_known_layers                (vTHX->Iknown_layers)
+#define PL_langinfo_buf                (vTHX->Ilanginfo_buf)
+#define PL_langinfo_bufsize    (vTHX->Ilanginfo_bufsize)
 #define PL_last_in_gv          (vTHX->Ilast_in_gv)
 #define PL_last_swash_hv       (vTHX->Ilast_swash_hv)
 #define PL_last_swash_key      (vTHX->Ilast_swash_key)
 #define PL_lastgotoprobe       (vTHX->Ilastgotoprobe)
 #define PL_laststatval         (vTHX->Ilaststatval)
 #define PL_laststype           (vTHX->Ilaststype)
-#define PL_lex_encoding                (vTHX->Ilex_encoding)
+#define PL_lc_numeric_mutex_depth      (vTHX->Ilc_numeric_mutex_depth)
+#define PL_locale_utf8ness     (vTHX->Ilocale_utf8ness)
 #define PL_localizing          (vTHX->Ilocalizing)
 #define PL_localpatches                (vTHX->Ilocalpatches)
 #define PL_lockhook            (vTHX->Ilockhook)
 #define PL_markstack_max       (vTHX->Imarkstack_max)
 #define PL_markstack_ptr       (vTHX->Imarkstack_ptr)
 #define PL_max_intro_pending   (vTHX->Imax_intro_pending)
-#define PL_maxo                        (vTHX->Imaxo)
 #define PL_maxsysfd            (vTHX->Imaxsysfd)
 #define PL_memory_debug_header (vTHX->Imemory_debug_header)
 #define PL_mess_sv             (vTHX->Imess_sv)
 #define PL_my_cxt_size         (vTHX->Imy_cxt_size)
 #define PL_na                  (vTHX->Ina)
 #define PL_nomemok             (vTHX->Inomemok)
-#define PL_numeric_local       (vTHX->Inumeric_local)
 #define PL_numeric_name                (vTHX->Inumeric_name)
 #define PL_numeric_radix_sv    (vTHX->Inumeric_radix_sv)
 #define PL_numeric_standard    (vTHX->Inumeric_standard)
+#define PL_numeric_underlying  (vTHX->Inumeric_underlying)
+#define PL_numeric_underlying_is_standard      (vTHX->Inumeric_underlying_is_standard)
 #define PL_ofsgv               (vTHX->Iofsgv)
 #define PL_oldname             (vTHX->Ioldname)
 #define PL_op                  (vTHX->Iop)
 #define PL_scopestack_max      (vTHX->Iscopestack_max)
 #define PL_scopestack_name     (vTHX->Iscopestack_name)
 #define PL_secondgv            (vTHX->Isecondgv)
+#define PL_seen_deprecated_macro       (vTHX->Iseen_deprecated_macro)
+#define PL_setlocale_buf       (vTHX->Isetlocale_buf)
+#define PL_setlocale_bufsize   (vTHX->Isetlocale_bufsize)
 #define PL_sharehook           (vTHX->Isharehook)
 #define PL_sig_pending         (vTHX->Isig_pending)
 #define PL_sighandlerp         (vTHX->Isighandlerp)
 #define PL_stashpad            (vTHX->Istashpad)
 #define PL_stashpadix          (vTHX->Istashpadix)
 #define PL_stashpadmax         (vTHX->Istashpadmax)
-#define PL_statbuf             (vTHX->Istatbuf)
 #define PL_statcache           (vTHX->Istatcache)
 #define PL_statgv              (vTHX->Istatgv)
 #define PL_statname            (vTHX->Istatname)
 #define PL_stderrgv            (vTHX->Istderrgv)
 #define PL_stdingv             (vTHX->Istdingv)
 #define PL_strtab              (vTHX->Istrtab)
+#define PL_strxfrm_NUL_replacement     (vTHX->Istrxfrm_NUL_replacement)
 #define PL_strxfrm_is_behaved  (vTHX->Istrxfrm_is_behaved)
 #define PL_strxfrm_max_cp      (vTHX->Istrxfrm_max_cp)
-#define PL_strxfrm_min_char    (vTHX->Istrxfrm_min_char)
 #define PL_sub_generation      (vTHX->Isub_generation)
 #define PL_subline             (vTHX->Isubline)
 #define PL_subname             (vTHX->Isubname)
 #define PL_sv_arenaroot                (vTHX->Isv_arenaroot)
 #define PL_sv_consts           (vTHX->Isv_consts)
 #define PL_sv_count            (vTHX->Isv_count)
+#define PL_sv_immortals                (vTHX->Isv_immortals)
 #define PL_sv_no               (vTHX->Isv_no)
 #define PL_sv_root             (vTHX->Isv_root)
 #define PL_sv_serial           (vTHX->Isv_serial)
 #define PL_sv_undef            (vTHX->Isv_undef)
 #define PL_sv_yes              (vTHX->Isv_yes)
+#define PL_sv_zero             (vTHX->Isv_zero)
 #define PL_sys_intern          (vTHX->Isys_intern)
 #define PL_taint_warn          (vTHX->Itaint_warn)
 #define PL_tainted             (vTHX->Itainted)
 #define PL_tmps_stack          (vTHX->Itmps_stack)
 #define PL_top_env             (vTHX->Itop_env)
 #define PL_toptarget           (vTHX->Itoptarget)
+#define PL_underlying_numeric_obj      (vTHX->Iunderlying_numeric_obj)
 #define PL_unicode             (vTHX->Iunicode)
 #define PL_unitcheckav         (vTHX->Iunitcheckav)
 #define PL_unitcheckav_save    (vTHX->Iunitcheckav_save)
 
 #if defined(PERL_GLOBAL_STRUCT)
 
+#define PL_C_locale_obj                (my_vars->GC_locale_obj)
+#define PL_GC_locale_obj       (my_vars->GC_locale_obj)
 #define PL_appctx              (my_vars->Gappctx)
 #define PL_Gappctx             (my_vars->Gappctx)
 #define PL_check               (my_vars->Gcheck)
 #define PL_Gdollarzero_mutex   (my_vars->Gdollarzero_mutex)
 #define PL_fold_locale         (my_vars->Gfold_locale)
 #define PL_Gfold_locale                (my_vars->Gfold_locale)
+#define PL_hash_chars          (my_vars->Ghash_chars)
+#define PL_Ghash_chars         (my_vars->Ghash_chars)
 #define PL_hash_seed           (my_vars->Ghash_seed)
 #define PL_Ghash_seed          (my_vars->Ghash_seed)
 #define PL_hash_seed_set       (my_vars->Ghash_seed_set)
 #define PL_Ghash_seed_set      (my_vars->Ghash_seed_set)
+#define PL_hash_state          (my_vars->Ghash_state)
+#define PL_Ghash_state         (my_vars->Ghash_state)
 #define PL_hints_mutex         (my_vars->Ghints_mutex)
 #define PL_Ghints_mutex                (my_vars->Ghints_mutex)
 #define PL_keyword_plugin      (my_vars->Gkeyword_plugin)
 #define PL_Gkeyword_plugin     (my_vars->Gkeyword_plugin)
+#define PL_keyword_plugin_mutex        (my_vars->Gkeyword_plugin_mutex)
+#define PL_Gkeyword_plugin_mutex       (my_vars->Gkeyword_plugin_mutex)
+#define PL_lc_numeric_mutex    (my_vars->Glc_numeric_mutex)
+#define PL_Glc_numeric_mutex   (my_vars->Glc_numeric_mutex)
 #define PL_locale_mutex                (my_vars->Glocale_mutex)
 #define PL_Glocale_mutex       (my_vars->Glocale_mutex)
 #define PL_malloc_mutex                (my_vars->Gmalloc_mutex)
 #define PL_Gperlio_fd_refcnt_size      (my_vars->Gperlio_fd_refcnt_size)
 #define PL_perlio_mutex                (my_vars->Gperlio_mutex)
 #define PL_Gperlio_mutex       (my_vars->Gperlio_mutex)
+#ifdef __VMS
+#define PL_perllib_sep         (my_vars->Gperllib_sep)
+#define PL_Gperllib_sep                (my_vars->Gperllib_sep)
+#endif
 #define PL_ppaddr              (my_vars->Gppaddr)
 #define PL_Gppaddr             (my_vars->Gppaddr)
 #ifdef OS2