These macros depends on ANSI / UNICODE build type and therefore for example
_fgettc_nolock has different definition based on _UNICODE macro.
Currently there are duplicate and different definitions:
#define _fgettc_nolock _fgetwc_nolock
#define _fgettc_nolock _fgetc_nolock
Which are causing compile warnings:
include/tchar.h:784: warning: "_fgettc_nolock" redefined
#define _fgettc_nolock _fgetc_nolock
include/tchar.h:772: note: this is the location of the previous definition
#define _fgettc_nolock _fgetwc_nolock
This change fixes commit 2f9a13461d265592b33cc9ff0e425ecb0df9499c
("include/crt: Ensure declarations of `_*_nolock` match MSVCRT version").
---
mingw-w64-headers/crt/tchar.h | 27 +++++++++++++++------------
1 file changed, 15 insertions(+), 12 deletions(-)
diff --git a/mingw-w64-headers/crt/tchar.h b/mingw-w64-headers/crt/tchar.h
index 6022f551c058..aabf3778746e 100644
--- a/mingw-w64-headers/crt/tchar.h
+++ b/mingw-w64-headers/crt/tchar.h
@@ -404,6 +404,21 @@ extern "C" {
#define _tsetlocale _wsetlocale
+#if __MSVCRT_VERSION__ >= 0x800
+#define _fgettc_nolock _fgetwc_nolock
+#define _fputtc_nolock _fputwc_nolock
+#define _gettc_nolock _getwc_nolock
+#define _gettch_nolock _getwch_nolock
+#define _gettche_nolock _getwche_nolock
+#define _gettchar_nolock _getwchar_nolock
+#define _puttc_nolock _putwc_nolock
+#define _puttchar_nolock _putwchar_nolock
+#define _puttch_nolock _putwch_nolock
+#define _ungettc_nolock _ungetwc_nolock
+#define _ungettch_nolock _ungetwch_nolock
+#define _tgetdcwd_nolock _wgetdcwd_nolock
+#endif
+
#define _tcsclen wcslen
#define _tcscnlen wcsnlen
#define _tcsclen_l(_String,_Locale) wcslen(_String)
@@ -769,18 +784,6 @@ extern "C" {
#define _tsetlocale setlocale
#if __MSVCRT_VERSION__ >= 0x800
-#define _fgettc_nolock _fgetwc_nolock
-#define _fputtc_nolock _fputwc_nolock
-#define _gettc_nolock _getwc_nolock
-#define _gettch_nolock _getwch_nolock
-#define _gettche_nolock _getwche_nolock
-#define _gettchar_nolock _getwchar_nolock
-#define _puttc_nolock _putwc_nolock
-#define _puttchar_nolock _putwchar_nolock
-#define _puttch_nolock _putwch_nolock
-#define _ungettc_nolock _ungetwc_nolock
-#define _ungettch_nolock _ungetwch_nolock
-#define _tgetdcwd_nolock _wgetdcwd_nolock
#define _fgettc_nolock _fgetc_nolock
#define _fputtc_nolock _fputc_nolock
#define _gettc_nolock _getc_nolock
--
2.20.1
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public