Re: texinfo-7.2.90 on OpenBSD

Gavin Smith <[email protected]>
Newsgroups gmane.comp.tex.texinfo.bugs
Message-ID <aWU7wwcXTWGF-S40@orangestar>
On Mon, Jan 12, 2026 at 06:59:29PM +0200, Eli Zaretskii wrote:
> > > My feeling is that it works in C, because we do it a bit differently,
> > > like:
> > > 
> > >       setenv_status = setenv ("LC_ALL", "en_US.UTF-8", 1)
> > >                       || setenv ("LANG", "en_US.UTF-8", 1);
> > >       locale = setlocale (LC_MESSAGES, "");
> > 
> > I don't know if it's relevant, but MS-Windows' setlocale also doesn't
> > support LC_MESSAGES.
> 
> Also, LC_ALL in the environment doesn't affect the MS-Windows'
> setlocale.
> 
> Why does the code above go via the environment, btw? why not simply
> 
>   locale = setlocale (LC_MESSAGES, "en_US.UTF-8");
> 
> ?

I had the same question:

Bruno Haible wrote on Sun, 01 Dec 2024:
> In other words, instead of doing
>   setlocale (LC_ALL, "en_US.UTF-8");
> you need to do
>   setenv ("LC_ALL", "en_US.UTF-8", 1);
>   setlocale (LC_ALL, "");
> 
> It's unfortunate that your code is working as expected on GNU, FreeBSD, NetBSD,
> Solaris systems but not on macOS, Windows, AIX, and OpenBSD. But there are
> (complicated) reasons for it, see
> https://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=blob;f=lib/localename-unsafe.c;h=0a2654d8a3fcd025c80d4ad6eb34ce02c13879e5;hb=HEAD#l3202

https://lists.gnu.org/archive/html/bug-gettext/2024-11/msg00050.html

I don't understand the reasons but the conclusion seems to be that we
have to use this round-about way of setting the locale, which we've
come to after some amount of trial and error.
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.