https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85732

--- Comment #6 from Jonathan Wakely <redi at gcc dot gnu.org> ---
This isn't a libstdc++ bug, I get the same with a pure C program:

$ cat loc.c
#include <locale.h>
#include <langinfo.h>
#include <stdio.h>

int main()
{
  locale_t loc = newlocale(1 << LC_ALL, "en_US.UTF-8", 0);
  const char* ccurr = nl_langinfo_l(CURRENCY_SYMBOL, loc);
  printf("Currency symbol: %s\n", ccurr);
  return 0;
}
$ gcc -D_GNU_SOURCE loc.c
$ ./a.out
Currency symbol: $
$ gcc -D_GNU_SOURCE loc.c -static
$ ./a.out
Currency symbol: 

So this seems to be a glibc problem.

Reply via email to