Martin Storsjö <[email protected]> wrote: > On Wed, 8 Jul 2026, Kirill Makurin wrote: > >> My expectation is that if an application or library uses `_locale_t`, it >> really depends on this CRT feature for one reason or another. However, >> in msvcrt.dll it is only fully available since Windows 8, making such >> applications and libraries half- or completely unfunctional on Windows 7 >> and older. > > Also, another aspect of the point is that the libc++ DLL references these > symbols. But in practice, I think very few, if any, users of libc++ (or > the C++ standard library in general) actually use the features that even > touch that. > > Disallowing using libc++ on Windows 7/msvcrt.dll, because it contains > _some_ optional functionality in a corner case feature which nobody uses, > sounds kinda restrictive to me.
I agree with this in context of libc++, but what if some other project heavily relies on working `_create_locale`? I think that the perfect solution would be for libc++ to check whether `_create_locale` is really available during configuration. However, you pointed out that getting this done in libc++ would be troublesome. In another reply I suggested to expose `_create_locale` etc. for msvcrt.dll with _WIN32_WINNT defined to 0x0601 (Vista) or higher; this will expose them when other `_locale_t` functions are also exposed (they are available in msvcrt.dll since Vista). - Kirill Makurin _______________________________________________ Mingw-w64-public mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
