utils: add a STATIC_ASSERT macro
It'd be nicer to use C11's static_assert(), but it's easier to roll our own C99 version using a trick I saw in xv6. Signed-off-by: Ran Benita <ran234@gmail.com>master
parent
d38ff018b1
commit
ead816e515
|
@ -40,6 +40,10 @@
|
||||||
*/
|
*/
|
||||||
#define UNCONSTIFY(const_ptr) ((void *) (uintptr_t) (const_ptr))
|
#define UNCONSTIFY(const_ptr) ((void *) (uintptr_t) (const_ptr))
|
||||||
|
|
||||||
|
#define STATIC_ASSERT(expr, message) do { \
|
||||||
|
switch (0) { case 0: case (expr): ; } \
|
||||||
|
} while (0)
|
||||||
|
|
||||||
static inline bool
|
static inline bool
|
||||||
streq(const char *s1, const char *s2)
|
streq(const char *s1, const char *s2)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue