diff options
Diffstat (limited to 'libraries/euler/include/cassert')
-rw-r--r-- | libraries/euler/include/cassert | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/libraries/euler/include/cassert b/libraries/euler/include/cassert new file mode 100644 index 0000000..bc716a0 --- /dev/null +++ b/libraries/euler/include/cassert @@ -0,0 +1,13 @@ +#pragma once + +namespace euler { + [[noreturn]] void assert_failed( + const char *file, const char *function, int line, const char *condition); +} + +#ifdef NDEBUG +#define assert(condition) ((void)0) +#else +#define assert(condition) ((condition) ? ((void)0) : \ + euler::assert_failed(__FILE__, __func__, __LINE__, #condition)) +#endif |