https://gcc.gnu.org/bugzilla/show_bug.cgi?id=20150
--- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> --- I thought this was by design, because it ensures we never return a null pointer, and that any two calls to allocate will return different values. I'm inclined to close this as WONTFIX.