patch 8.2.5073: clang on MS-Windows produces warnings
Problem: Clang on MS-Windows produces warnings.
Solution: Avoid the warnings. (Yegappan Lakshmanan, closes #10546)
diff --git a/src/mbyte.c b/src/mbyte.c
index a01a051..3656880 100644
--- a/src/mbyte.c
+++ b/src/mbyte.c
@@ -4922,13 +4922,18 @@
return FALSE;
}
- iconv = (void *)GetProcAddress(hIconvDLL, "libiconv");
- iconv_open = (void *)GetProcAddress(hIconvDLL, "libiconv_open");
- iconv_close = (void *)GetProcAddress(hIconvDLL, "libiconv_close");
- iconvctl = (void *)GetProcAddress(hIconvDLL, "libiconvctl");
- iconv_errno = get_dll_import_func(hIconvDLL, "_errno");
+ iconv = (size_t (*)(iconv_t, const char **,
+ size_t *, char **, size_t *))
+ GetProcAddress(hIconvDLL, "libiconv");
+ iconv_open = (iconv_t (*)(const char *, const char *))
+ GetProcAddress(hIconvDLL, "libiconv_open");
+ iconv_close = (int (*)(iconv_t))
+ GetProcAddress(hIconvDLL, "libiconv_close");
+ iconvctl = (int (*)(iconv_t, int, void *))
+ GetProcAddress(hIconvDLL, "libiconvctl");
+ iconv_errno = (int *(*)(void))get_dll_import_func(hIconvDLL, "_errno");
if (iconv_errno == NULL)
- iconv_errno = (void *)GetProcAddress(hMsvcrtDLL, "_errno");
+ iconv_errno = (int *(*)(void))GetProcAddress(hMsvcrtDLL, "_errno");
if (iconv == NULL || iconv_open == NULL || iconv_close == NULL
|| iconvctl == NULL || iconv_errno == NULL)
{