From 457a6f4beef0550c21ecaa7615ac6ec3d9772258 Mon Sep 17 00:00:00 2001 From: Laszlo Ashin Date: Sat, 22 Nov 2008 14:22:32 +0100 Subject: utils: introduce assert_static() assert_static() will help us to find false asserts in compile time. Of course it only works in case of expressions which can be evaluated compile time. It cannot be used in global scope. --- src/utils.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/utils.h') diff --git a/src/utils.h b/src/utils.h index 64fac0ded..6e2d288fc 100644 --- a/src/utils.h +++ b/src/utils.h @@ -29,6 +29,15 @@ #define ARRAY_SIZE(x) (sizeof(x)/sizeof(x[0])) +#ifndef assert_static +/* Compile time assertion developed by Ralf Holly */ +/* http://pera-software.com/articles/compile-time-assertions.pdf */ +#define assert_static(e) \ + do { \ + enum { assert_static__ = 1/(e) }; \ + } while (0) +#endif /* !assert_static */ + char *myFgets(char *buffer, int bufferSize, FILE * fp); void stripReturnChar(char *string); -- cgit v1.2.3