[ANNOUNCEMENT] TEST RELEASE: Cygwin 2.6.0-0.3
Corinna Vinschen
corinna-cygwin@cygwin.com
Thu Jul 28 20:00:00 GMT 2016
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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://cygwin.com/pipermail/cygwin/attachments/20160728/484b0a88/attachment.sig>
More information about the Cygwin
mailing list