On Jul 28 15:44, Ken Brown wrote: > On 7/27/2016 4:33 PM, Corinna Vinschen wrote: > > On Jul 27 10:58, Ken Brown wrote: > >> On 7/27/2016 8:36 AM, Corinna Vinschen wrote: > >>> Hi Cygwin developers and maintainers, > >>> Hi everyone else, > >>> > >>> > >>> I uploaded a new Cygwin test release 2.6.0-0.3. > >>> > >>> Supposed to fix the problems reported in > >>> https://cygwin.com/ml/cygwin/2016-07/msg00306.html > >> > >> This is now fixed. Here's another problem, with a very easy test case: > >> > >> $ locale -a > >> Segmentation fault (core dumped) > > > > Confirmed. I missed to set a variable in case of the "th_TH.TIS-620" > > locale or the "thai" locale alias. I'll build a 0.4 tomorrow. > > This is fixed in 0.4, and that's the last of the regressions that I've > found by running the emacs test suite. > > I built and tested texlive with no problem. > > I also tried to build icu, but there are some glitches due to the new > POSIX guard in /usr/include/locale.h. For example: [...] > > The errors go away if I move the prototypes of setlocale and > localeconv outside of the new POSIX guard. Ouch, right, they don't belong there. What was I thinking? Proposing this patch, can you give it a quick test? diff --git a/newlib/libc/include/locale.h b/newlib/libc/include/locale.h index f74e9c5..6b3b788 100644 --- a/newlib/libc/include/locale.h +++ b/newlib/libc/include/locale.h @@ -72,26 +72,26 @@ char *_EXFUN(_setlocale_r,(struct _reent *, int, const char *)); struct lconv *_EXFUN(_localeconv_r,(struct _reent *)); #if __POSIX_VISIBLE >= 200809 - locale_t _newlocale_r (struct _reent *, int, const char *, locale_t); void _freelocale_r (struct _reent *, locale_t); locale_t _duplocale_r (struct _reent *, locale_t); locale_t _uselocale_r (struct _reent *, locale_t); +#endif /* __POSIX_VISIBLE >= 200809 */ #ifndef _REENT_ONLY char *_EXFUN(setlocale,(int, const char *)); struct lconv *_EXFUN(localeconv,(void)); +#if __POSIX_VISIBLE >= 200809 locale_t newlocale (int, const char *, locale_t); void freelocale (locale_t); locale_t duplocale (locale_t); locale_t uselocale (locale_t); +#endif /* __POSIX_VISIBLE >= 200809 */ #endif /* _REENT_ONLY */ -#endif /* __POSIX_VISIBLE >= 200809 */ - _END_STD_C #endif /* _LOCALE_H_ */ Thanks (A LOT), Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Maintainer cygwin AT cygwin DOT com Red Hat