acadia-newlib/newlib/libc/locale
Corinna Vinschen 8d138c3f66 Cygwin: fix LC_CTYPE in global locale to be a real C.UTF-8 locale
https://cygwin.com/pipermail/cygwin/2022-December/252571.html

Cygwin's default locale is "C.UTF-8" as far as LC_CTYPE settings
are concerned.  However, while __global_locale contains fixed
mbtowc and wctomb pointers, the lc_ctype_T pointer is still pointing
to _C_ctype_locale, representing the standard "C" locale.

The problem with this is that the codeset name as well as MB_CUR_MAX
is wrong.

Fix this by introducing a new lc_ctype_T structure called
_C_utf8_ctype_locale, setting the default codeset to "UTF-8" and
MB_CUR_MAX to 6.  Use this as lc_ctype_T pointer in __global_locale
by default on Cygwin.

Fixes: a6a477fa81 ("POSIX-1.2008 per-thread locales, groundwork part 1")
Co-Authored-By: Takashi Yano <takashi.yano@nifty.ne.jp>
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2022-12-03 16:16:30 +01:00
..
Makefile.inc newlib: libc: merge build up a directory 2022-03-16 21:18:25 -04:00
duplocale.c
freelocale.c
lctype.c Cygwin: fix LC_CTYPE in global locale to be a real C.UTF-8 locale 2022-12-03 16:16:30 +01:00
lmessages.c
lmonetary.c
lnumeric.c
locale.c Cygwin: fix LC_CTYPE in global locale to be a real C.UTF-8 locale 2022-12-03 16:16:30 +01:00
locale.tex
localeconv.c
newlocale.c newlocale: fix crash when trying to write to __C_locale 2022-08-12 12:29:26 +02:00
nl_langinfo.3
nl_langinfo.c
setlocale.h Cygwin: fix LC_CTYPE in global locale to be a real C.UTF-8 locale 2022-12-03 16:16:30 +01:00
timelocal.c
uselocale.c Add _REENT_LOCALE(ptr) 2022-07-13 06:55:46 +02:00