From: Willy Tarreau Date: Thu, 21 Sep 2017 13:24:10 +0000 (+0200) Subject: MINOR: ist: add a macro to ease const array initialization X-Git-Tag: v1.8-dev3~74 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2ba672726c05f55dc70d3e887444c64a8decca64;p=thirdparty%2Fhaproxy.git MINOR: ist: add a macro to ease const array initialization It's not possible to use strlen() in const arrays even with const strings, but we can use sizeof-1 via a macro. Let's provide this in the IST() macro, as it saves the developer from having to count the characters. --- diff --git a/include/common/ist.h b/include/common/ist.h index c9260022b9..c57aa8977a 100644 --- a/include/common/ist.h +++ b/include/common/ist.h @@ -45,6 +45,9 @@ struct ist { size_t len; }; +/* makes a constant ist from a constant string, for use in array declarations */ +#define IST(str) { .ptr = str "", .len = (sizeof str "") - 1 } + /* makes an ist from a regular zero terminated string. Null has length 0. * Constants are detected and replaced with constant initializers. Other values * are measured by hand without strlen() as it's much cheaper and inlinable on