mem_display_blocks runs before global destructors, so it reports as
leaked any memory which is managed by a global scope object with a
destructor. If mem_display_blocks calls mem_free, and the destructor
later calls mem_free, a double-free results, and usually leads to a
crash. Even if the memory were actually leaked, freeing it does not
help because the program will exit soon anyway.
Reported-by: zico <https://github.com/dxx-rebirth/dxx-rebirth/issues/85>