#ifndef __VXGG_REWRITE___SHARED_H___3880294315821___ #define __VXGG_REWRITE___SHARED_H___3880294315821___ #include // Defines how `xcalloc()` should exit. `___VXGG___XCALLOC_EXIT_ON_ERROR___ > 0` calls `error()`, and thus functions registered with // `atexit()` and `on_exit()`. `___VXGG___XCALLOC_EXIT_ON_ERROR___ <= 0` calls `abort()` on error. `xcalloc()` will ALWAYS 'abort', // doing otherwise defeats the purpose of the function #define ___VXGG___XCALLOC_EXIT_ON_ERROR___ 1 // `calloc()` with error checking. Calls `error()` or `abort()` on error depending on the value of `___VXGG___XCALLOC_EXIT_ON_ERROR___` void* xcalloc(size_t nmemb, size_t size); #endif