X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=common.h;h=9794a92e8e8ea33a494b2772869b5171afa1bbe8;hb=ee840c902aec5c8becf8051eca7fe2b82b8ddc5b;hp=19409c82edd0ef6039d21a0f9c94877765ba8575;hpb=27c08567bf014b7bf62acdfe38934b2f0ea7bc01;p=model-checker.git diff --git a/common.h b/common.h index 19409c8..9794a92 100644 --- a/common.h +++ b/common.h @@ -1,16 +1,29 @@ +/** @file common.h + * @brief General purpose macros. + */ + #ifndef __COMMON_H__ #define __COMMON_H__ #include - -//#define CONFIG_DEBUG +#include "config.h" #ifdef CONFIG_DEBUG #define DEBUG(fmt, ...) do { printf("*** %25s(): line %-4d *** " fmt, __func__, __LINE__, ##__VA_ARGS__); } while (0) #define DBG() DEBUG("\n"); +#define DBG_ENABLED() (1) #else #define DEBUG(fmt, ...) #define DBG() +#define DBG_ENABLED() (0) #endif +#define ASSERT(expr) \ +do { \ + if (!(expr)) { \ + fprintf(stderr, "Error: assertion failed in %s at line %d\n", __FILE__, __LINE__); \ + exit(EXIT_FAILURE); \ + } \ +} while (0); + #endif /* __COMMON_H__ */