std.mem.ValidationAllocator: forward free() calls

Failing to forward free calls to the underlying allocator makes
`ValidationAllocator` unusable for testing allocators while checking for
leaks. This change allows allocators that wrap `std.testing.allocator`
to be tested with `std.heap.testAllocator()` in test decls without
reporting erroneous leaks.
This commit is contained in:
dweiller 2023-06-08 13:30:28 +10:00 committed by Andrew Kelley
parent 8cf72cdfb1
commit 28eed1f7b3

View File

@ -96,10 +96,10 @@ pub fn ValidationAllocator(comptime T: type) type {
log2_buf_align: u8,
ret_addr: usize,
) void {
_ = ctx;
_ = log2_buf_align;
_ = ret_addr;
const self = @ptrCast(*Self, @alignCast(@alignOf(Self), ctx));
assert(buf.len > 0);
const underlying = self.getUnderlyingAllocatorPtr();
underlying.rawFree(buf, log2_buf_align, ret_addr);
}
pub fn reset(self: *Self) void {