From: Ondřej Surý Date: Tue, 18 Oct 2022 09:15:57 +0000 (+0200) Subject: Add ISC_{LIST,LINK}_INITIALIZER for designated initializers X-Git-Tag: v9.19.7~52^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cb3c36b8bf926e208b9817926d40cf7956f34b67;p=thirdparty%2Fbind9.git 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); --- diff --git a/lib/isc/include/isc/list.h b/lib/isc/include/isc/list.h index b7a783c3adb..007cec0f30d 100644 --- a/lib/isc/include/isc/list.h +++ b/lib/isc/include/isc/list.h @@ -15,6 +15,16 @@ #include +#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 #define ISC_LINK_INSIST(x) ISC_INSIST(x) #else /* ifdef ISC_LIST_CHECKINIT */