From 4e82034d194e3ea9a547437baf869c1891eca6aa Mon Sep 17 00:00:00 2001 From: Benny Baumann <BenBE@geshi.org> Date: Sun, 3 Jan 2021 16:19:12 +0100 Subject: [PATCH] chg: Use attribute macros from central location --- src/macros.hpp | 23 ++++++++++++++++++++++- src/net/tcp_server_socket.cpp | 16 +++++++++------- 2 files changed, 31 insertions(+), 8 deletions(-) diff --git a/src/macros.hpp b/src/macros.hpp index 981f170..b5c38c1 100644 --- a/src/macros.hpp +++ b/src/macros.hpp @@ -1,5 +1,7 @@ #pragma once +#ifdef __GNUC__ + #define ATTR_NONNULL_ALL __attribute__((nonnull)) #define ATTR_NONNULL(...) __attribute__((nonnull(__VA_ARGS__))) @@ -7,8 +9,27 @@ #define ATTR_STRFTIME(fmtpos) __attribute__(( format(strftime, (fmtpos), 0 ) )) #define ATTR_PACKED __attribute__((packed)) - +#define ATTR_UNUSED __attribute__((unused)) #define ATTR_WEAK __attribute__((weak)) #define ATTR_LIKELY(x) __builtin_expect((x), 1) #define ATTR_UNLIKELY(x) __builtin_expect((x), 0) + +#else + +#define ATTR_NONNULL_ALL +#define ATTR_NONNULL(...) + +#define ATTR_PRINTF(fmtpos, argpos) +#define ATTR_STRFTIME(fmtpos) + +#define ATTR_PACKED +#define ATTR_UNUSED +#define ATTR_WEAK + +#define ATTR_LIKELY(x) (x) +#define ATTR_UNLIKELY(x) (x) + +#endif + +#define MARK_UNUSED(x) (void)(x) diff --git a/src/net/tcp_server_socket.cpp b/src/net/tcp_server_socket.cpp index 0308d90..7a555c2 100644 --- a/src/net/tcp_server_socket.cpp +++ b/src/net/tcp_server_socket.cpp @@ -18,6 +18,9 @@ #include <sys/stat.h> #include <netinet/in.h> +#include "macros.hpp" + + namespace rmrf::net { tcp_server_socket::tcp_server_socket(uint16_t port, incoming_client_listener_type client_listener_) : @@ -54,13 +57,10 @@ tcp_server_socket::tcp_server_socket(uint16_t port, incoming_client_listener_typ // As we're not depending on the actual async server object we need to suppress the warning that we're not using it. -#ifdef __GNUC__ - #define UNUSED __attribute__ ((unused)) -#else - #define UNUSED -#endif -void tcp_server_socket::await_raw_socket_incomming(async_server_socket::self_ptr_type ass UNUSED, const auto_fd& socket) { +void tcp_server_socket::await_raw_socket_incomming(async_server_socket::self_ptr_type ass, const auto_fd& socket) { + MARK_UNUSED(ass); + struct sockaddr_in client_addr; socklen_t client_len = sizeof(client_addr); int client_fd_raw = accept(socket.get(), (struct sockaddr *)&client_addr, &client_len); @@ -84,7 +84,9 @@ int tcp_server_socket::get_number_of_connected_clients() { return this->number_of_connected_clients; } -void tcp_server_socket::client_destructed_cb(tcp_client::exit_status exit_status UNUSED) { +void tcp_server_socket::client_destructed_cb(tcp_client::exit_status exit_status) { + MARK_UNUSED(exit_status); + this->number_of_connected_clients--; } -- GitLab