diff options
Diffstat (limited to 'newlib/libc/locale/uselocale.c')
-rw-r--r-- | newlib/libc/locale/uselocale.c | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/newlib/libc/locale/uselocale.c b/newlib/libc/locale/uselocale.c index dbf0d3393..810590fc0 100644 --- a/newlib/libc/locale/uselocale.c +++ b/newlib/libc/locale/uselocale.c @@ -1,3 +1,55 @@ +/* +FUNCTION + <<uselocale>>---free resources allocated for a locale object + +INDEX + uselocale + +INDEX + _uselocale_r + +ANSI_SYNOPSIS + #include <locale.h> + locale_t uselocale(locale_t <[locobj]>); + + locale_t _uselocale_r(void *<[reent]>, locale_t <[locobj]>); + +DESCRIPTION +The <<uselocale>> function shall set the current locale for the current +thread to the locale represented by newloc. + +The value for the newloc argument shall be one of the following: + +1. A value returned by the <<newlocale>> or <<duplocale>> functions + +2. The special locale object descriptor LC_GLOBAL_LOCALE + +3. (locale_t) <<0>> + +Once the <<uselocale>> function has been called to install a thread-local +locale, the behavior of every interface using data from the current +locale shall be affected for the calling thread. The current locale for +other threads shall remain unchanged. + +If the newloc argument is (locale_t) <<0>>, the object returned is the +current locale or LC_GLOBAL_LOCALE if there has been no previous call to +<<uselocale>> for the current thread. + +If the newloc argument is LC_GLOBAL_LOCALE, the thread shall use the +global locale determined by the <<setlocale>> function. + +RETURNS +Upon successful completion, the <<uselocale>> function shall return the +locale handle from the previous call for the current thread, or +LC_GLOBAL_LOCALE if there was no such previous call. Otherwise, +<<uselocale>> shall return (locale_t) <<0>> and set errno to indicate +the error. + + +PORTABILITY +<<uselocale>> is POSIX-1.2008. +*/ + #include <newlib.h> #include <reent.h> #include <stdlib.h> |