locdata
struct locdata __posix_collate_locdata = {
struct locdata *
struct locdata *ldata;
struct locdata __posix_messages_locdata = {
struct locdata *
struct locdata *ldata;
struct locdata __posix_monetary_locdata = {
struct locdata *
struct locdata *ldata;
struct locdata __posix_numeric_locdata = {
struct locdata *
struct locdata *ldata;
nptr = loc->locdata[LC_NUMERIC]->l_data[0];
mptr = loc->locdata[LC_MONETARY]->l_data[0];
.locdata = {
static struct locdata cutf_locdata[LC_ALL] = {
static struct locdata *locdata_get(int, const char *);
static struct locdata *locdata_get_cache(int, const char *);
struct locdata *
struct locdata *ldata;
__locdata_free(struct locdata *ldata)
static struct locdata *cache_data[LC_ALL];
static struct locdata *cat_data[LC_ALL];
static struct locdata *
struct locdata *loc;
static struct locdata *
return (posix_locale.locdata[category]);
loc->locdata[i] = src->locdata[i];
loc->collate = loc->locdata[LC_COLLATE]->l_data[0];
loc->ctype = loc->locdata[LC_CTYPE]->l_data[0];
loc->runelocale = loc->locdata[LC_CTYPE]->l_data[1];
loc->messages = loc->locdata[LC_MESSAGES]->l_data[0];
loc->monetary = loc->locdata[LC_MONETARY]->l_data[0];
loc->numeric = loc->locdata[LC_NUMERIC]->l_data[0];
loc->time = loc->locdata[LC_TIME]->l_data[0];
struct locdata *ldata;
loc->locdata[i] = ldata;
loc->collate = loc->locdata[LC_COLLATE]->l_data[0];
loc->ctype = loc->locdata[LC_CTYPE]->l_data[0];
loc->runelocale = loc->locdata[LC_CTYPE]->l_data[1];
loc->messages = loc->locdata[LC_MESSAGES]->l_data[0];
loc->monetary = loc->locdata[LC_MONETARY]->l_data[0];
loc->numeric = loc->locdata[LC_NUMERIC]->l_data[0];
loc->time = loc->locdata[LC_TIME]->l_data[0];
if (strcmp(loc->locdata[0]->l_lname,
loc->locdata[i]->l_lname) != 0) {
loc->locdata[LC_CTYPE]->l_lname,
loc->locdata[LC_NUMERIC]->l_lname,
loc->locdata[LC_TIME]->l_lname,
loc->locdata[LC_COLLATE]->l_lname,
loc->locdata[LC_MONETARY]->l_lname,
loc->locdata[LC_MESSAGES]->l_lname);
(void) strlcpy(loc->locname, loc->locdata[LC_CTYPE]->l_lname,
return (loc->locdata[category]->l_lname);
typedef struct locdata *(*loadfn_t)(const char *);
extern struct locdata __posix_messages_locdata;
extern struct locdata __posix_time_locdata;
extern struct locdata __posix_ctype_locdata;
extern struct locdata __posix_collate_locdata;
struct locdata *l_next; /* link cached list */
struct locdata *locdata[LC_ALL];
struct locdata *__locdata_alloc(const char *, size_t);
void __locdata_free(struct locdata *);
struct locdata *__locdata_get_cache(int, const char *);
void __locdata_set_cache(int, struct locdata *);
struct locdata *__lc_numeric_load(const char *name);
struct locdata *__lc_monetary_load(const char *name);
struct locdata *__lc_messages_load(const char *name);
struct locdata *__lc_time_load(const char *name);
struct locdata *__lc_ctype_load(const char *name);
struct locdata *__lc_collate_load(const char *name);
extern struct locdata __posix_numeric_locdata;
extern struct locdata __posix_monetary_locdata;
struct locdata *ldata;
ldata = loc->locdata[LC_CTYPE];
return (loc->locdata[cat]->l_lname);
lnum = loc->locdata[LC_NUMERIC]->l_data[0];
lct = loc->locdata[LC_CTYPE]->l_data[0];
struct locdata __posix_ctype_locdata = {
struct locdata *
struct locdata *ldata;
struct locdata __posix_time_locdata = {
struct locdata *
struct locdata *ldata;