summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/vppinfra/clib.h5
-rw-r--r--src/vppinfra/error_bootstrap.h4
2 files changed, 3 insertions, 6 deletions
diff --git a/src/vppinfra/clib.h b/src/vppinfra/clib.h
index be21cad604b..6c82f869653 100644
--- a/src/vppinfra/clib.h
+++ b/src/vppinfra/clib.h
@@ -38,6 +38,7 @@
#ifndef included_clib_h
#define included_clib_h
+#include <stddef.h>
#include <vppinfra/config.h>
#ifdef __x86_64__
@@ -66,8 +67,8 @@
#define ARRAY_LEN(x) (sizeof (x)/sizeof (x[0]))
#define _STRUCT_FIELD(t,f) (((t *) 0)->f)
-#define STRUCT_OFFSET_OF(t,f) ((uword) & _STRUCT_FIELD (t, f))
-#define STRUCT_BIT_OFFSET_OF(t,f) (BITS(u8) * (uword) & _STRUCT_FIELD (t, f))
+#define STRUCT_OFFSET_OF(t,f) offsetof(t, f)
+#define STRUCT_BIT_OFFSET_OF(t,f) (BITS(u8) * STRUCT_OFFSET_OF (t, f))
#define STRUCT_SIZE_OF(t,f) (sizeof (_STRUCT_FIELD (t, f)))
#define STRUCT_BITS_OF(t,f) (BITS (_STRUCT_FIELD (t, f)))
#define STRUCT_ARRAY_LEN(t,f) ARRAY_LEN (_STRUCT_FIELD (t, f))
diff --git a/src/vppinfra/error_bootstrap.h b/src/vppinfra/error_bootstrap.h
index 8dbbc7f359d..185f4c6c4af 100644
--- a/src/vppinfra/error_bootstrap.h
+++ b/src/vppinfra/error_bootstrap.h
@@ -108,11 +108,7 @@ do { \
} while (0)
#endif /* __COVERITY */
-#if defined(__clang__)
-#define STATIC_ASSERT(truth,...)
-#else
#define STATIC_ASSERT(truth,...) _Static_assert(truth, __VA_ARGS__)
-#endif
#define STATIC_ASSERT_SIZEOF(d, s) \
STATIC_ASSERT (sizeof (d) == s, "Size of " #d " must be " # s " bytes")