#define GCC_VERSION(major,minor) (__GNUC__ > (major) || (__GNUC__ == (major) && __GNUC_MINOR__ >= (minor))) #include "adt/foreach.h" #include "adt/nullptr.h" #include "adt/logs.h" #define return_unless(cond) \ do { \ if (!(cond)) \ { LOG ("error") << #cond << '\n'; \ return; } \ } while (0) #define return_val_unless(cond, val) \ do { \ if (!(cond)) \ { LOG ("error") << #cond << '\n'; \ return val; } \ } while (0)