65816-llvm-mos/runtime/include/locale.h
2026-05-30 19:40:29 -05:00

52 lines
1.1 KiB
C

// Minimal locale.h for the W65816 runtime. No real locale support —
// just enough to let portable code compile. setlocale() always
// returns "C" and ignores its argument; localeconv() returns a
// pointer to a fixed C-locale struct.
#ifndef _LOCALE_H
#define _LOCALE_H
#ifdef __cplusplus
extern "C" {
#endif
#ifndef NULL
# define NULL ((void *)0)
#endif
struct lconv {
char *decimal_point;
char *thousands_sep;
char *grouping;
char *int_curr_symbol;
char *currency_symbol;
char *mon_decimal_point;
char *mon_thousands_sep;
char *mon_grouping;
char *positive_sign;
char *negative_sign;
char int_frac_digits;
char frac_digits;
char p_cs_precedes;
char p_sep_by_space;
char n_cs_precedes;
char n_sep_by_space;
char p_sign_posn;
char n_sign_posn;
};
#define LC_ALL 0
#define LC_COLLATE 1
#define LC_CTYPE 2
#define LC_MONETARY 3
#define LC_NUMERIC 4
#define LC_TIME 5
char *setlocale(int category, const char *locale);
struct lconv *localeconv(void);
#ifdef __cplusplus
}
#endif
#endif