From 3f00cdb1817f8a81baa953711c0c8f25a0e567dd Mon Sep 17 00:00:00 2001 From: momo5502 Date: Sun, 5 Jan 2025 19:27:17 +0100 Subject: [PATCH] Fix some compilation warnings --- src/common/network/socket.cpp | 6 +++--- src/common/network/socket.hpp | 2 ++ src/common/platform/platform.hpp | 9 ++++++++- src/unicorn-emulator/unicorn.hpp | 4 ++++ src/windows-emulator/syscall_utils.hpp | 2 ++ 5 files changed, 19 insertions(+), 4 deletions(-) diff --git a/src/common/network/socket.cpp b/src/common/network/socket.cpp index 7f385df1..4fe84bd0 100644 --- a/src/common/network/socket.cpp +++ b/src/common/network/socket.cpp @@ -68,10 +68,10 @@ namespace network bool socket::send(const address& target, const void* data, const size_t size) const { - const int res = sendto(this->socket_, static_cast(data), static_cast(size), 0, + const auto res = sendto(this->socket_, static_cast(data), static_cast(size), 0, &target.get_addr(), - target.get_size()); - return res == static_cast(size); + static_cast(target.get_size())); + return static_cast(res) == size; } bool socket::send(const address& target, const std::string& data) const diff --git a/src/common/network/socket.hpp b/src/common/network/socket.hpp index 7c8cded9..45dd8c16 100644 --- a/src/common/network/socket.hpp +++ b/src/common/network/socket.hpp @@ -7,11 +7,13 @@ #ifdef _WIN32 using socklen_t = int; +using send_size = int; #define GET_SOCKET_ERROR() (WSAGetLastError()) #define poll WSAPoll #define SOCK_WOULDBLOCK WSAEWOULDBLOCK #else using SOCKET = int; +using send_size = ssize_t; #define INVALID_SOCKET (SOCKET)(~0) #define SOCKET_ERROR (-1) #define GET_SOCKET_ERROR() (errno) diff --git a/src/common/platform/platform.hpp b/src/common/platform/platform.hpp index 01e89ba6..fbbe0969 100644 --- a/src/common/platform/platform.hpp +++ b/src/common/platform/platform.hpp @@ -1,8 +1,12 @@ #pragma once #ifdef _WIN32 + #pragma warning(push) #pragma warning(disable: 4201) // nameless struct/union #pragma warning(disable: 4702) // unreachable code +#else + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wpedantic" #endif #include "compiler.hpp" @@ -21,7 +25,7 @@ #include "threading.hpp" #ifdef OS_WINDOWS - #pragma comment(lib, "ntdll") +#pragma comment(lib, "ntdll") extern "C" { @@ -37,4 +41,7 @@ extern "C" _Out_opt_ PULONG ReturnLength ); } + #pragma warning(pop) +#else + #pragma GCC diagnostic pop #endif \ No newline at end of file diff --git a/src/unicorn-emulator/unicorn.hpp b/src/unicorn-emulator/unicorn.hpp index 20ee619a..e93d3631 100644 --- a/src/unicorn-emulator/unicorn.hpp +++ b/src/unicorn-emulator/unicorn.hpp @@ -1,7 +1,9 @@ #pragma once +#ifdef _MSC_VER #pragma warning(push) #pragma warning(disable: 4505) +#endif #ifdef __clang__ #pragma GCC diagnostic push @@ -15,7 +17,9 @@ #pragma GCC diagnostic pop #endif +#ifdef _MSC_VER #pragma warning(pop) +#endif #include diff --git a/src/windows-emulator/syscall_utils.hpp b/src/windows-emulator/syscall_utils.hpp index 9072438b..8cfe6bad 100644 --- a/src/windows-emulator/syscall_utils.hpp +++ b/src/windows-emulator/syscall_utils.hpp @@ -174,6 +174,8 @@ void forward_syscall(const syscall_context& c, NTSTATUS (*handler)(const syscall resolve_indexed_argument>>(c.emu, index)... }; + (void)index; + const auto ret = std::apply(handler, std::move(func_args)); write_status(c, ret, ip); }