Earlier quoted context omitted.
I'm not close to Zig development, but in addition to the GeneralPurposeAllocator work that a comment already links to, there is other ongoing stuff in that space, like an allocator in 64-bit that does not reuse pages (and instead keeps using new addresses in the "infinite" 64-bit space). There are also known techniques like Type-After-Type that can avoid use-after free in C and C++ [0]. And also advances in hardware…
what does zig offer over c/c++ with sanitizers?
Seriously. You get these tests for free with zig, no extra tooling, if you use testing allocator in your tests. This also is a carrot to get you to write tests. Hell, I even mocked libc's malloc/calloc/free to make sure that my code doesn't leak memory:
https://github.com/ityonemo/Primes/blob/ee81d05e80d68854ab11...