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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.