Print this page
2964 need POSIX 2008 locale object support

*** 41,52 **** */ #ifndef _ISO_LOCALE_ISO_H #define _ISO_LOCALE_ISO_H - #pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/feature_tests.h> #ifdef __cplusplus extern "C" { #endif --- 41,50 ----
*** 113,122 **** --- 111,142 ---- #else extern char *setlocale(); extern struct lconv *localeconv(); #endif + #define LC_COLLATE_MASK (1<<0) + #define LC_CTYPE_MASK (1<<1) + #define LC_MESSAGES_MASK (1<<2) + #define LC_MONETARY_MASK (1<<3) + #define LC_NUMERIC_MASK (1<<4) + #define LC_TIME_MASK (1<<5) + #define LC_ALL_MASK (LC_COLLATE_MASK | LC_CTYPE_MASK | LC_MESSAGES_MASK | \ + LC_MONETARY_MASK | LC_NUMERIC_MASK | LC_TIME_MASK) + #define LC_GLOBAL_LOCALE ((locale_t)-1) + + /* XXX */ + #ifndef _LOCALE_T_DEFINED + #define _LOCALE_T_DEFINED + typedef struct _xlocale *locale_t; + #endif + + locale_t duplocale(locale_t); + int freelocale(locale_t); + locale_t newlocale(int, const char *, locale_t); + const char *querylocale(int, locale_t); + locale_t uselocale(locale_t); + #if __cplusplus >= 199711L } #endif /* end of namespace std */ #ifdef __cplusplus