The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

__UNDEFINED__ LOCK_NUMERIC_STANDARD UNLOCK_NUMERIC_STANDARD

#if PERL_VERSION_LT(5,27,9) __UNDEFINED__ LC_NUMERIC_LOCK __UNDEFINED__ LC_NUMERIC_UNLOCK # if PERL_VERSION_LT(5,19,0) # undef STORE_LC_NUMERIC_SET_STANDARD # undef RESTORE_LC_NUMERIC # undef DECLARATION_FOR_LC_NUMERIC_MANIPULATION # ifdef USE_LOCALE __UNDEFINED__ DECLARATION_FOR_LC_NUMERIC_MANIPULATION char *LoC_ __UNDEFINED__ STORE_NUMERIC_SET_STANDARD() \ LoC_ = savepv(setlocale(LC_NUMERIC, NULL)); \ SAVEFREEPV(LoC_); \ setlocale(LC_NUMERIC, "C"); __UNDEFINED__ RESTORE_LC_NUMERIC() \ setlocale(LC_NUMERIC, LoC_); # else __UNDEFINED__ DECLARATION_FOR_LC_NUMERIC_MANIPULATION __UNDEFINED__ STORE_LC_NUMERIC_SET_STANDARD() __UNDEFINED__ RESTORE_LC_NUMERIC() # endif # endif #endif

#ifndef LOCK_NUMERIC_STANDARD # define LOCK_NUMERIC_STANDARD() #endif

#ifndef UNLOCK_NUMERIC_STANDARD # define UNLOCK_NUMERIC_STANDARD() #endif

/* The names of these changed in 5.28 */ __UNDEFINED__ LOCK_LC_NUMERIC_STANDARD LOCK_NUMERIC_STANDARD __UNDEFINED__ UNLOCK_LC_NUMERIC_STANDARD UNLOCK_NUMERIC_STANDARD

/* If this doesn't exist, it's not needed, so is void noop */ __UNDEFINED__ switch_to_global_locale()

/* Originally, this didn't return a value, but in perls like that, the value * should always be TRUE. Add a return to Perl_sync_locale() when it's * available. And actually do a sync when its not, if locales are available on * this system. */ #ifdef sync_locale # if { VERSION < 5.27.9 } # if { VERSION >= 5.21.3 } # undef sync_locale # define sync_locale() (Perl_sync_locale(aTHX), 1) # elif defined(sync_locale) /* These should only be the 5.20 maints*/ # undef sync_locale /* Just copy their defn and return 1 */ # define sync_locale() (new_ctype(setlocale(LC_CTYPE, NULL)), \ new_collate(setlocale(LC_COLLATE, NULL)), \ set_numeric_local(), \ new_numeric(setlocale(LC_NUMERIC, NULL)), \ 1) # elif defined(new_ctype) && defined(LC_CTYPE) # define sync_locale() (new_ctype(setlocale(LC_CTYPE, NULL)), 1) # endif # endif #endif

__UNDEFINED__ sync_locale() 1

bool sync_locale() CODE: RETVAL = sync_locale(); OUTPUT: RETVAL

use Config;

# We don't know for sure that we are in the global locale for testing. But # if this is unthreaded, it almost certainly is. But Configure can be called # to force POSIX locales on unthreaded systems. If this becomes a problem # this check could be beefed up. if ($Config{usethreads}) { ok(1, "ironically we have to skip testing sync_locale under threads"); } else { ok(&Devel::PPPort::sync_locale(), "sync_locale returns TRUE"); }

4 POD Errors

The following errors were encountered while parsing the POD:

Around line 1:

Unknown directive: =provides

Around line 7:

Unknown directive: =implementation

Around line 71:

Unknown directive: =xsubs

Around line 81:

Unknown directive: =tests