AK: Make VERIFY() work in MinSizeRel builds

This commit is contained in:
Andreas Kling 2022-07-08 14:16:53 +02:00
parent dab814ea11
commit 2217d91b8d

View file

@ -10,8 +10,15 @@
# include <Kernel/Assertions.h>
#else
# include <assert.h>
# define VERIFY assert
# define VERIFY_NOT_REACHED() assert(false) /* NOLINT(cert-dcl03-c,misc-static-assert) No, this can't be static_assert, it's a runtime check */
# ifndef NDEBUG
# define VERIFY assert
# else
# define VERIFY(expr) \
(__builtin_expect(!(expr), 0) \
? __builtin_trap() \
: (void)0)
# endif
# define VERIFY_NOT_REACHED() VERIFY(false) /* NOLINT(cert-dcl03-c,misc-static-assert) No, this can't be static_assert, it's a runtime check */
static constexpr bool TODO = false;
# define TODO() VERIFY(TODO) /* NOLINT(cert-dcl03-c,misc-static-assert) No, this can't be static_assert, it's a runtime check */
#endif