mirror of
https://git.tukaani.org/xz.git
synced 2024-04-04 12:36:23 +02:00
tuklib_physmem: Silence warning from -Wcast-function-type on MinGW-w64.
tuklib_physmem depends on GetProcAddress() for both MSVC and MinGW-w64 to retrieve a function address. The proper way to do this is to cast the return value to the type of function pointer retrieved. Unfortunately, this causes a cast-function-type warning, so the best solution is to simply ignore the warning.
This commit is contained in:
parent
82e3c968bf
commit
b43ff180fb
1 changed files with 9 additions and 0 deletions
|
@ -87,8 +87,17 @@ tuklib_physmem(void)
|
||||||
HMODULE kernel32 = GetModuleHandle(TEXT("kernel32.dll"));
|
HMODULE kernel32 = GetModuleHandle(TEXT("kernel32.dll"));
|
||||||
if (kernel32 != NULL) {
|
if (kernel32 != NULL) {
|
||||||
typedef BOOL (WINAPI *gmse_type)(LPMEMORYSTATUSEX);
|
typedef BOOL (WINAPI *gmse_type)(LPMEMORYSTATUSEX);
|
||||||
|
#if TUKLIB_GNUC_REQ(8,1) || (defined(__clang__) \
|
||||||
|
&& __has_warning("-Wcast-function-type"))
|
||||||
|
# pragma GCC diagnostic push
|
||||||
|
# pragma GCC diagnostic ignored "-Wcast-function-type"
|
||||||
|
#endif
|
||||||
gmse_type gmse = (gmse_type)GetProcAddress(
|
gmse_type gmse = (gmse_type)GetProcAddress(
|
||||||
kernel32, "GlobalMemoryStatusEx");
|
kernel32, "GlobalMemoryStatusEx");
|
||||||
|
#if TUKLIB_GNUC_REQ(8,1) || (defined(__clang__) \
|
||||||
|
&& __has_warning("-Wcast-function-type"))
|
||||||
|
# pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
if (gmse != NULL) {
|
if (gmse != NULL) {
|
||||||
MEMORYSTATUSEX meminfo;
|
MEMORYSTATUSEX meminfo;
|
||||||
meminfo.dwLength = sizeof(meminfo);
|
meminfo.dwLength = sizeof(meminfo);
|
||||||
|
|
Loading…
Reference in a new issue