#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_ofsgv (vTHX->Iofsgv)
#define PL_oldname (vTHX->Ioldname)
#define PL_op (vTHX->Iop)
#ifdef USE_LOCALE_NUMERIC
PERLVARI(I, numeric_standard, int, TRUE)
- /* Assume simple numerics */
-PERLVARI(I, numeric_local, bool, TRUE)
- /* Assume local numerics */
+ /* Assume C locale numerics */
+PERLVARI(I, numeric_underlying, bool, TRUE)
+ /* Assume underlying locale numerics */
PERLVAR(I, numeric_name, char *) /* Name of current numeric locale */
PERLVAR(I, numeric_radix_sv, SV *) /* The radix separator if not '.' */
*
* This sets several interpreter-level variables:
* PL_numeric_name The underlying locale's name: a copy of 'newnum'
- * PL_numeric_local A boolean indicating if the toggled state is such
+ * PL_numeric_underlying A boolean indicating if the toggled state is such
* that the current locale is the program's underlying
* locale
* PL_numeric_standard An int indicating if the toggled state is such
Safefree(PL_numeric_name);
PL_numeric_name = NULL;
PL_numeric_standard = TRUE;
- PL_numeric_local = TRUE;
+ PL_numeric_underlying = TRUE;
return;
}
save_newnum = stdize_locale(savepv(newnum));
PL_numeric_standard = isNAME_C_OR_POSIX(save_newnum);
- PL_numeric_local = TRUE;
+ PL_numeric_underlying = TRUE;
if (! PL_numeric_name || strNE(PL_numeric_name, save_newnum)) {
Safefree(PL_numeric_name);
do_setlocale_c(LC_NUMERIC, "C");
PL_numeric_standard = TRUE;
- PL_numeric_local = isNAME_C_OR_POSIX(PL_numeric_name);
+ PL_numeric_underlying = isNAME_C_OR_POSIX(PL_numeric_name);
set_numeric_radix(0);
# ifdef DEBUGGING
do_setlocale_c(LC_NUMERIC, PL_numeric_name);
PL_numeric_standard = isNAME_C_OR_POSIX(PL_numeric_name);
- PL_numeric_local = TRUE;
+ PL_numeric_underlying = TRUE;
set_numeric_radix(1);
# ifdef DEBUGGING
* contrary be noops, in the dynamic scope by setting PL_numeric_standard to 2.
* */
# define _NOT_IN_NUMERIC_UNDERLYING \
- (! PL_numeric_local && PL_numeric_standard < 2)
+ (! PL_numeric_underlying && PL_numeric_standard < 2)
# define DECLARATION_FOR_LC_NUMERIC_MANIPULATION \
void (*_restore_LC_NUMERIC_function)(pTHX) = NULL
DECLARATION_FOR_LC_NUMERIC_MANIPULATION;
STORE_LC_NUMERIC_SET_TO_NEEDED();
- local_radix = PL_numeric_local && PL_numeric_radix_sv;
+ local_radix = PL_numeric_underlying && PL_numeric_radix_sv;
if (local_radix && SvCUR(PL_numeric_radix_sv) > 1) {
size += SvCUR(PL_numeric_radix_sv) - 1;
s = SvGROW_mutable(sv, size);
#ifdef USE_LOCALE_NUMERIC
PL_numeric_standard = proto_perl->Inumeric_standard;
- PL_numeric_local = proto_perl->Inumeric_local;
+ PL_numeric_underlying = proto_perl->Inumeric_underlying;
#endif /* !USE_LOCALE_NUMERIC */
/* Did the locale setup indicate UTF-8? */