From bc7a641f18a10992f0fc3ff75c6cf79bf8615882 Mon Sep 17 00:00:00 2001 From: Joachim Henze Date: Fri, 18 Mar 2022 21:29:08 +0100 Subject: [PATCH] [0.4.11][CRT] Fix 2 MSVC compiler warnings CORE-17812 observed with MSVC2010SP1 16.0.40219.1 x86-target in dbg+rls-config several times: sdk\lib\crt\string\wtoi64.c(28) : warning C4146: unary minus operator applied to unsigned type, result still unsigned sdk\lib\crt\string\wtoi64.c(194) : warning C4146: unary minus operator applied to unsigned type, result still unsigned the fix is a PARTIAL port of 0.4.15-dev-2951-g 5d8e834897781944dcaf80de6c3df9c2c51212c7 and while touching the file fix another white-space-glitch. in sum that brings us 100% in sync in this file to master 0.4.15-dev-3264-g570cedf. --- sdk/lib/crt/string/wtoi64.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sdk/lib/crt/string/wtoi64.c b/sdk/lib/crt/string/wtoi64.c index 94684fa0d3a..59409933c95 100644 --- a/sdk/lib/crt/string/wtoi64.c +++ b/sdk/lib/crt/string/wtoi64.c @@ -6,7 +6,7 @@ */ __int64 CDECL _wtoi64_l(const wchar_t *str, _locale_t locale) { - ULONGLONG RunningTotal = 0; + LONGLONG RunningTotal = 0; BOOL bMinus = FALSE; while (iswctype((int)*str, _SPACE)) { @@ -104,7 +104,7 @@ __int64 CDECL _wcstoi64_l(const wchar_t *nptr, ret = _I64_MIN; #ifndef _LIBCNT_ *_errno() = ERANGE; -#endif +#endif } else ret = ret*base + v; } @@ -191,7 +191,7 @@ unsigned __int64 CDECL _wcstoui64_l(const wchar_t *nptr, if(endptr) *endptr = (wchar_t*)nptr; - return negative ? -ret : ret; + return negative ? -(__int64)ret : ret; } /*********************************************************************