2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-30 05:57:52 +00:00

fix typing mistakes in trace macros

The detach function declaration in `ISC__REFCOUNT_TRACE_DECL` had an
returned an accidental implicit int. While not allowed since C99, it
became an error by default in GCC 14.

`ISC_REFCOUNT_TRACE_IMPL` and `ISC_REFCOUNT_STATIC_TRACE_IMPL` expanded
into the wrong macros, trying to declare it again with the wrong number
of parameters.
This commit is contained in:
Aydın Mercan 2024-05-17 16:45:10 +03:00 committed by Evan Hunt
parent 5972a80714
commit 49e62ee186

View File

@ -127,7 +127,7 @@ typedef atomic_uint_fast32_t isc_refcount_t;
stat void name##__attach(name##_t *ptr, name##_t **ptrp, \
const char *func, const char *file, \
unsigned int line); \
stat name##__detach(name##_t **ptrp, const char *func, \
stat void name##__detach(name##_t **ptrp, const char *func, \
const char *file, unsigned int line)
#define ISC_REFCOUNT_BLANK
@ -190,9 +190,9 @@ typedef atomic_uint_fast32_t isc_refcount_t;
}
#define ISC_REFCOUNT_TRACE_IMPL(name, destroy) \
ISC__REFCOUNT_TRACE_DECL(name, destroy, ISC_REFCOUNT_BLANK)
ISC__REFCOUNT_TRACE_IMPL(name, destroy, ISC_REFCOUNT_BLANK)
#define ISC_REFCOUNT_STATIC_TRACE_IMPL(name, destroy) \
ISC__REFCOUNT_TRACE_DECL(name, destroy, static inline)
ISC__REFCOUNT_TRACE_IMPL(name, destroy, static inline)
#define ISC__REFCOUNT_DECL(name, stat) \
stat name##_t *name##_ref(name##_t *ptr) __attribute__((unused)); \