diff options
author | Emil Renner Berthing <esmil@mailme.dk> | 2013-08-27 21:28:16 +0200 |
---|---|---|
committer | Emil Renner Berthing <esmil@mailme.dk> | 2013-08-27 22:03:04 +0200 |
commit | 28633b6935340dd79a80bdccf491c27d82d8169f (patch) | |
tree | 0b1e393cd52803cec0e5f21a17f561d7492d26d8 /include | |
parent | deb634636068fc191d807606437cd63f5dc0d150 (diff) | |
download | lem-28633b6935340dd79a80bdccf491c27d82d8169f.tar.gz lem-28633b6935340dd79a80bdccf491c27d82d8169f.tar.xz lem-28633b6935340dd79a80bdccf491c27d82d8169f.zip |
add built-time assertions
Diffstat (limited to 'include')
-rw-r--r-- | include/lem.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/lem.h b/include/lem.h index 5b35459..2b548b8 100644 --- a/include/lem.h +++ b/include/lem.h @@ -28,6 +28,12 @@ # define __FUNCTION__ __func__ /* C99 */ #endif +/* Built-time assertions */ +#define LEM_BUILD_ASSERT__(prefix, line) prefix##line +#define LEM_BUILD_ASSERT_(prefix, line) LEM_BUILD_ASSERT__(prefix, line) +#define LEM_BUILD_ASSERT(x) \ + typedef int LEM_BUILD_ASSERT_(lem_assert_, __LINE__)[(x) ? 1 : -1] + #ifdef NDEBUG #define lem_debug(...) #else |