@node nl_langinfo
@subsection @code{nl_langinfo}
@findex nl_langinfo

POSIX specification:@* @url{https://pubs.opengroup.org/onlinepubs/9799919799/functions/nl_langinfo.html}

Gnulib module: nl_langinfo
@mindex nl_langinfo

Portability problems fixed by Gnulib:
@itemize
@item
This function is missing on some platforms:
Minix 3.1.8, mingw, MSVC 14, Android 7.1.
@item
The constant @code{CODESET} is not supported on some platforms:
OpenBSD 3.8.
@item
The constants @code{ALTMON_1} to @code{ALTMON_12} are not supported on some
platforms:
glibc 2.26, musl libc, macOS 14, NetBSD 8.0, OpenBSD 7.5, AIX 7.2, HP-UX 11.31, Solaris 11.4, Haiku, Cygwin 2.9.
@item
The constants @code{ABALTMON_1} to @code{ABALTMON_12} are not supported on many
platforms:
glibc 2.42, musl libc, macOS 14, NetBSD 10.0, OpenBSD 7.6, AIX 7.3, HP-UX 11.31, Solaris 11.4, Haiku, Cygwin 3.5.
@item
The constants @code{ERA}, @code{ERA_D_FMT}, @code{ERA_D_T_FMT},
@code{ERA_T_FMT}, @code{ALT_DIGITS} are not supported on some platforms:
OpenBSD 7.5.
@item
This function is not multithread-safe on some platforms:
macOS 26, Solaris 11.3.
@end itemize

Portability problems not fixed by Gnulib:
@itemize
@item
On Cygwin 1.5.x, which doesn't have locales, @code{nl_langinfo(CODESET)} always
returns @code{"US-ASCII"}.

@item
On Cygwin 1.7.0, only the charset portion of a locale designation is honored.

@item
On NetBSD 5.0, in some locales, @code{nl_langinfo(CRNCYSTR)} returns the
empty string, although the local currency symbol, as returned by
@code{localeconv()->currency_symbol}, is non-empty.

@item
On NetBSD 5.1, in the "C" locale, the results of
@code{nl_langinfo(ABMON_1)} ... @code{nl_langinfo(ABMON_12)} are full month
names, not abbreviated month names.
@end itemize
