From f8301f668e4fda28dfd2aad40a8fd060d527637c Mon Sep 17 00:00:00 2001 From: Mateusz Poliwczak Date: Tue, 4 Nov 2025 19:58:09 +0100 Subject: [PATCH] std.ArrayList: memset to undefined in shrinkRetainingCapacity and clearRetainingCapacity Fixes #25796 --- lib/std/array_list.zig | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/std/array_list.zig b/lib/std/array_list.zig index 11202a186e6d..6c728c3998e8 100644 --- a/lib/std/array_list.zig +++ b/lib/std/array_list.zig @@ -381,11 +381,14 @@ pub fn AlignedManaged(comptime T: type, comptime alignment: ?mem.Alignment) type pub fn shrinkRetainingCapacity(self: *Self, new_len: usize) void { assert(new_len <= self.items.len); self.items.len = new_len; + @memset(self.items[new_len..], undefined); } + /// Reduce length to 0. /// Invalidates all element pointers. pub fn clearRetainingCapacity(self: *Self) void { self.items.len = 0; + @memset(self.items, undefined); } /// Invalidates all element pointers.