include: Refactor «unused» attribute into new LIBBSD_UNUSED macro

This make it possible to declare function arguments in headers as
potentially unused, so that they do not emit warnings. We will use this
instead of the BSD __unused, which we cannot currently enable on GNU
systems due to Linux and glibc having conflicting symbols.
This commit is contained in:
Guillem Jover
2024-11-02 23:12:40 +01:00
parent aff40cae08
commit 1d711a2ced

View File

@@ -99,6 +99,12 @@
#define LIBBSD_GCC_VERSION 0
#endif
#if LIBBSD_GCC_VERSION >= 0x0300 || __has_attribute(__unused__)
# define LIBBSD_UNUSED __attribute__((__unused__))
#else
# define LIBBSD_UNUSED
#endif
#if LIBBSD_GCC_VERSION >= 0x0405 || __has_attribute(__deprecated__)
#define LIBBSD_DEPRECATED(x) __attribute__((__deprecated__(x)))
#elif LIBBSD_GCC_VERSION >= 0x0301
@@ -150,11 +156,7 @@
* Disable for now. */
#if 0
#ifndef __unused
# if LIBBSD_GCC_VERSION >= 0x0300
# define __unused __attribute__((__unused__))
# else
# define __unused
# endif
# define __unused LIBBSD_UNUSED
#endif
#endif