mirror of
https://git.code.sf.net/p/mingw-w64/mingw-w64
synced 2024-11-23 01:44:43 +08:00
581532b8e4
Ensure that all these MS specific _*t* macros always expands to MS variant of scanf and printf functions independently of __USE_MINGW_ANSI_STDIO. Majority of the _*t* macros expands to MS specific variants of stdio functions which are not provided by mingw when __USE_MINGW_ANSI_STDIO=1. But some few are, e.g. _tscanf which currently expands to scanf or wscanf. And this can cause that _tscanf behaves differently than _tscanf_l (which does not have __USE_MINGW_ANSI_STDIO=1 replacement. Another example is %s in _stprintf() macro. MS variant of wide-printf treats %s as wchar_*t, but C95+ mandates that %s is always char*. _stprintf() is suppose to be called as: _stprintf(buffer, _T("%s"), _T("string")); And wide variant would work correctly only in the case %s takes wchar_t*. With this change behavior of all _*t* macros would be same and expands always only to MS function, which also ensures compatibility of %s with arguments passed to _*t* macros. Signed-off-by: Martin Storsjö <martin@martin.st> |
||
---|---|---|
build-aux | ||
COPYING.MinGW-w64 | ||
COPYING.MinGW-w64-runtime | ||
mingw-w64-crt | ||
mingw-w64-doc | ||
mingw-w64-headers | ||
mingw-w64-libraries | ||
mingw-w64-tools | ||
.gitignore | ||
aclocal.m4 | ||
AUTHORS | ||
config.h.in | ||
configure | ||
configure.ac | ||
COPYING | ||
DISCLAIMER | ||
DISCLAIMER.PD | ||
Makefile.am | ||
Makefile.in |