2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-30 22:15:20 +00:00

Add ISC_{LIST,LINK}_INITIALIZER for designated initializers

Since we are using designated initializers, we were missing initializers
for ISC_LIST and ISC_LINK, add them, so you can do

    *foo = (foo_t){ .list = ISC_LIST_INITIALIZER };

Instead of:

    *foo = (foo_t){ 0 };
    ISC_LIST_INIT(foo->list);
This commit is contained in:
Ondřej Surý
2022-10-18 11:15:57 +02:00
parent aaa50c5101
commit cb3c36b8bf

View File

@@ -15,6 +15,16 @@
#include <isc/assertions.h> #include <isc/assertions.h>
#define ISC_LIST_INITIALIZER \
{ \
.head = NULL, .tail = NULL, \
}
#define ISC_LINK_INITIALIZER_TYPE(type) \
{ \
.prev = (type *)-1, .next = (type *)-1, \
}
#define ISC_LINK_INITIALIZER ISC_LINK_INITIALIZER_TYPE(void)
#ifdef ISC_LIST_CHECKINIT #ifdef ISC_LIST_CHECKINIT
#define ISC_LINK_INSIST(x) ISC_INSIST(x) #define ISC_LINK_INSIST(x) ISC_INSIST(x)
#else /* ifdef ISC_LIST_CHECKINIT */ #else /* ifdef ISC_LIST_CHECKINIT */