--- deliantra/dclient/include/compiler.h 2010/10/18 15:34:21 1.3 +++ deliantra/dclient/include/compiler.h 2010/10/19 09:45:03 1.4 @@ -6,16 +6,20 @@ #include "adt/nullptr.h" #include "adt/logs.h" +void log_failure (char const *file, int line, char const *func, char const *cond); + +#define LOC __FILE__, __LINE__, __func__ + #define return_unless(cond) \ do { \ if (!(cond)) \ - { LOG ("error") << #cond << '\n'; \ + { log_failure (LOC, #cond); \ return; } \ } while (0) #define return_val_unless(cond, val) \ do { \ if (!(cond)) \ - { LOG ("error") << #cond << '\n'; \ + { log_failure (LOC, #cond); \ return val; } \ } while (0)