Realloc can move memory, we need to *not* reuse the address after calling it