From 026edbb4ef85ef3d38876548a771b7c72c87803f Mon Sep 17 00:00:00 2001 From: Nicholas Nethercote Date: Fri, 26 Nov 2021 13:36:39 +1100 Subject: [PATCH] Use unchecked construction in `Layout::pad_to_align`. Other, similar methods for `Layout` do likewise, and there's already an `unwrap()` around the result demonstrating the safety. --- library/core/src/alloc/layout.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/library/core/src/alloc/layout.rs b/library/core/src/alloc/layout.rs index cc32d5223b4..a9abb8d2d59 100644 --- a/library/core/src/alloc/layout.rs +++ b/library/core/src/alloc/layout.rs @@ -281,7 +281,9 @@ impl Layout { // > `usize::MAX`) let new_size = self.size() + pad; - Layout::from_size_align(new_size, self.align()).unwrap() + // SAFETY: self.align is already known to be valid and new_size has been + // padded already. + unsafe { Layout::from_size_align_unchecked(new_size, self.align()) } } /// Creates a layout describing the record for `n` instances of