Hello, I was preparing patch series to de-duplicate declarations and tidy-up locale.h (like I did with ctype.h and conio.h). I was running CI[1] and "llvm-mingw (msvcrt)" job failed because libc++ was unconditionally using functions _create_locale, _free_locale and _configthreadlocale functions.
IMO, this usage is very problematic not only because libc++ will not function correctly on pre-Windows 8 systems, but also because it prevents building it with pre-msvcr80.dll CRTs (although, I don't know if it is supported). I really do not like those wrappers for _create_locale, _free_locale and _get_current_locale. They may give other packages an impression that those functions are always available in msvcrt.dll, which will result in all such packages malfunctioning on pre-Windows 8 systems. I really wish we could remove them. Same also mostly applies to _configthreadlocale, but we still would need to provide it even as a stub since we call it in crtexe.c. - Kirill Makurin [1] https://github.com/maiddaisuki/mingw-w64/actions/runs/25734981079 _______________________________________________ Mingw-w64-public mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
