__cleanup
extern void (*__cleanup)(void) __hidden;
__cleanup = _cleanup; /* conservative */
__cleanup = _cleanup;
__cleanup = _cleanup;
if (__cleanup)
(*__cleanup)();
void (*__cleanup)(void);
if (__cleanup)
(*__cleanup)();
extern void (*__cleanup)(void);
CLEANUP_NAME(_n, _t) _x __cleanup(CLEANUP_NAME(_n, _destroy)) = \
#define __free(_n) __cleanup(__free_##_n)