/* Duplicate a NUL-terminated string, exit on failure. */
char *mh_xstrdup(const char *src) MALLOC;
-/* Call free(3), if ptr isn't NULL. */
-void mh_xfree(void *ptr);
-
/* Set p to point to newly allocated, uninitialised, memory. */
#define NEW(p) ((p) = mh_xmalloc(sizeof *(p)))