+/*
+ * Assert constant expression @cond, return 1.
+ * If @cond is zero, force a compilation error.
+ */
+#define BUILD_ASSERT_ONE(cond) \
+ (sizeof(char[1 - 2 * !(cond)]))
+
+/*
+ * Assert constant expression @cond.
+ * If @cond is zero, force a compilation error.
+ */
+#define BUILD_ASSERT(cond) \
+ ((void)BUILD_ASSERT_ONE(cond))
+
+/*
+ * Number of elements in ARRAY.
+ */
+#define ARRAY_SIZE(array) (sizeof(array) / sizeof(array[0]))
+