Problem with recent change to getlocalename_l
Jeff Law <[email protected]>
| Newsgroups | gmane.comp.lib.newlib |
|---|---|
| Message-ID | <[email protected]> |
We're seeing a few ports fail to build newlib after this change: > commit 71511d4ac8686c2220093cc01525311d9c88bc4e > Author: Corinna Vinschen <[email protected]> > Date: Sun Jan 21 13:23:09 2024 +0100 > > getlocalename_l: implement per SUS Base Specifications Issue 8 draft > > #include <locale.h> > const char *getlocalename_l(int category, locale_t locobj); > > Most notably, we need a per-thread space to store the string > returned if locobj is LC_GLOBAL_LOCALE. No errors are defined > for getlocalename_l. So we can't use buffer allocation which > might lead to an ENOMEM error. We have to use a "static" buffer > in the per-thread state. > > Note that the feature test macro in locale.h is not quite correct. > This needs to be fixed as soon as the pru-elf shows this failure: CC libc/stdlib/libc_a-btowc.o In file included from /home/jlaw/test/newlib-cygwin/newlib/libc/include/wchar.h:6, from /home/jlaw/test/newlib-cygwin/newlib/libc/stdlib/btowc.c:1: /home/jlaw/test/newlib-cygwin/newlib/libc/stdlib/btowc.c: In function 'btowc': /home/jlaw/test/newlib-cygwin/newlib/libc/stdlib/btowc.c:24:3: error: 'struct _misc_reent' has no member named '_getlocale_l_buf' 24 | _REENT_CHECK_MISC(_REENT); | ^~~~~~~~~~~~~~~~~ The tester is also seeing xstormy16-elf and msp430-elf fail in the same manner. Jeff