summaryrefslogtreecommitdiff
path: root/libc/misc
diff options
context:
space:
mode:
Diffstat (limited to 'libc/misc')
-rw-r--r--libc/misc/locale/locale.c7
-rw-r--r--libc/misc/wchar/wchar.c4
-rw-r--r--libc/misc/wctype/wctype.c6
3 files changed, 14 insertions, 3 deletions
diff --git a/libc/misc/locale/locale.c b/libc/misc/locale/locale.c
index 689257b41..f3c23f9fb 100644
--- a/libc/misc/locale/locale.c
+++ b/libc/misc/locale/locale.c
@@ -46,7 +46,7 @@
#ifdef __LOCALE_C_ONLY
-link_warning(setlocale,"the 'setlocale' function supports only C|POSIX locales");
+link_warning(setlocale,"the 'setlocale' function supports only C|POSIX locales")
static const char C_string[] = "C";
@@ -272,8 +272,7 @@ char *setlocale(int category, const char *locale)
#ifdef __LOCALE_C_ONLY
-#warning localeconv is hardwired for C/POSIX locale only
-link_warning(localeconv,"the 'localeconv' function is hardwired for C/POSIX locale only");
+link_warning(localeconv,"the 'localeconv' function is hardwired for C/POSIX locale only")
static struct lconv the_lconv;
@@ -431,7 +430,9 @@ void _locale_set(const unsigned char *p)
r = CODESET_LIST;
__global_locale.codeset = r + r[c -= 3];
__global_locale.encoding = __ctype_encoding_8_bit;
+#ifdef __UCLIBC_MJN3_ONLY__
#warning REMINDER: update 8 bit mb_cur_max when trasnlit implemented!
+#endif
/* TODO - update when translit implemented! */
__global_locale.mb_cur_max = 1;
c8b = __locale_mmap->codeset_8_bit + c;
diff --git a/libc/misc/wchar/wchar.c b/libc/misc/wchar/wchar.c
index 4506f4f8e..cb24f069e 100644
--- a/libc/misc/wchar/wchar.c
+++ b/libc/misc/wchar/wchar.c
@@ -76,7 +76,9 @@
#ifdef __UCLIBC_HAS_LOCALE__
#define ENCODING (__global_locale.encoding)
+#ifdef __UCLIBC_MJN3_ONLY__
#warning implement __CTYPE_HAS_UTF_8_LOCALES!
+#endif
#define __CTYPE_HAS_UTF_8_LOCALES
#else
#undef __CTYPE_HAS_8_BIT_LOCALES
@@ -363,7 +365,9 @@ size_t _wchar_utf8sntowcs(wchar_t *__restrict pwc, size_t wn,
--n;
if ((wc = ((unsigned char) *s++)) >= 0x80) { /* Not ASCII... */
mask = 0x40;
+#ifdef __UCLIBC_MJN3_ONLY__
#warning fix range for 16 bit wides
+#endif
if ( ((unsigned char)(s[-1] - 0xc0)) < (0xfe - 0xc0) ) {
goto START;
}
diff --git a/libc/misc/wctype/wctype.c b/libc/misc/wctype/wctype.c
index 802e979f1..68b9e4579 100644
--- a/libc/misc/wctype/wctype.c
+++ b/libc/misc/wctype/wctype.c
@@ -295,11 +295,15 @@ wctype_t wctype(const char *property)
/**********************************************************************/
#ifdef L_iswctype
+#ifdef __UCLIBC_MJN3_ONLY__
#warning duh... replace the range-based classification with table lookup!
+#endif
#ifdef __WCTYPE_WITH_LOCALE
+#ifdef __UCLIBC_MJN3_ONLY__
#warning TODO: need to fix locale ctype table lookup stuff
+#endif
#if 0
extern const char ctype_range[];
#else
@@ -308,7 +312,9 @@ static const char ctype_range[] = {
};
#endif
+#ifdef __UCLIBC_MJN3_ONLY__
#warning TODO: need to handle combining class!
+#endif
#define WCctype_TI_MASK ((1 << WCctype_TI_SHIFT) - 1)
#define WCctype_II_MASK ((1 << WCctype_II_SHIFT) - 1)