void *fallible_malloc(size_t size, const char *const filename, int lineno) { #ifdef FALLIBLE if (fallible_should_fail(filename, lineno)) { return NULL; } #else (void)filename; (void)lineno; #endif return malloc(size); } #define MALLOC(size) fallible_malloc(size, __FILE__, __LINE__)