Pali pointed out that we don't know how layout of threadlocaleinfostruct was 
changing for system msvcrt.dll. If there's an extra field, we may accidentally 
dereference some data fields as a pointer from those macros.

IMO, I would suggest we do not expose _locale_t stuff for msvcrt.dll at all. 
Functions which take an _locale_t argument first appeared in Vista's msvcrt.dll 
but it was lacking _create_locale to create such an object, so they were 
effectively useless. _create_locale was later added in Windows 8's msvcrt.dll I 
think. So, it's a mess.

Note that _locale_t first appeared in msvcr80.dll. I think Pali's patches 
should allow us to do the right thing with versioned msvcr*.dll and UCRT.

- Kirill Makurin

_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to