-/*
- * Developer mode: asserts that a given index `_index` is less than a
- * given length `_length`.
- */
-#define BT_ASSERT_PRE_VALID_INDEX(_index, _length) \
- BT_ASSERT_PRE((_index) < (_length), \
- "Index is out of bounds: index=%" PRIu64 ", " \
- "count=%" PRIu64, (uint64_t) (_index), (uint64_t) (_length))
+/* Developer mode version of BT_ASSERT_PRE_VALID_INDEX() */
+# define BT_ASSERT_PRE_DEV_VALID_INDEX(_index, _length) \
+ BT_ASSERT_PRE_VALID_INDEX((_index), (_length))
+
+/* Developer mode version of `BT_ASSERT_PRE_FUNC`. */
+# define BT_ASSERT_PRE_DEV_FUNC
+#else
+# define BT_ASSERT_PRE_DEV_MSG(_fmt, ...)
+# define BT_ASSERT_PRE_DEV(_cond, _fmt, ...) ((void) sizeof((void) (_cond), 0))
+# define BT_ASSERT_PRE_DEV_NON_NULL(_obj, _obj_name) \
+ ((void) sizeof((void) (_obj), (void) (_obj_name), 0))
+# define BT_ASSERT_PRE_DEV_HOT(_obj, _obj_name, _fmt, ...) \
+ ((void) sizeof((void) (_obj), (void) (_obj_name), 0))
+# define BT_ASSERT_PRE_DEV_VALID_INDEX(_index, _length) \
+ ((void) sizeof((void) (_index), (void) (_length), 0))
+# define BT_ASSERT_PRE_DEV_FUNC __attribute__((unused))
+#endif /* BT_DEV_MODE */