+ UNUSED_VAR(extern char, STATIC_ASSERTION_FAILED__[(condition) ? 1 : -1])
+
+#ifndef ASSERT_TYPE_EQUAL
+/*! Ensure two variables have the same type. */
+#define ASSERT_TYPE_EQUAL(var1, var2) \
+ do { (void)(&(var1) == &(var2)); } while(0)
+#endif
+
+#ifndef ASSERT_TYPE_IS
+/*! Ensure variable is of specified type. */
+#define ASSERT_TYPE_IS(var, type) \
+ do { (void)(&var == (type *)0); } while(0)
+#endif