Re: Question on FIELD_PREP() for static array

From: Johannes Berg
Date: Thu Oct 11 2018 - 15:22:57 EST


On Thu, 2018-10-11 at 21:13 +0200, Johannes Berg wrote:
>
> However, I have another trick:
>
> #define __NLA_ENSURE(condition) (0 * sizeof(struct { unsigned int x:1 - 2*!(condition);}))
>
> or, in this context,
>
> #define BUILD_BUG_ON_RET_ZERO(cond) (0 * sizeof(struct { unsigned int x:1 - 2*!(condition);}))

Oops, I forgot to insert the second !, it must be

#define BUILD_BUG_ON_RET_ZERO(cond) (0 * sizeof(struct { unsigned int x:1 - 2*!!(condition);}))

johannes