From 8a8c0d41f76d91437311710e1206a8d664bfc0c1 Mon Sep 17 00:00:00 2001 From: "Shane F. Carr" Date: Thu, 11 May 2023 23:22:49 -0700 Subject: [PATCH 1/2] Add ZeroVec stack size tests --- utils/zerovec/src/lib.rs | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/utils/zerovec/src/lib.rs b/utils/zerovec/src/lib.rs index add52f11395..79355f388d5 100644 --- a/utils/zerovec/src/lib.rs +++ b/utils/zerovec/src/lib.rs @@ -300,6 +300,32 @@ pub mod vecs { pub use crate::flexzerovec::{FlexZeroSlice, FlexZeroVec, FlexZeroVecOwned}; } +#[cfg(test)] +mod tests { + use super::*; + use core::mem::size_of; + + #[test] + fn check_sizes() { + assert_eq!(24, size_of::>()); + assert_eq!(24, size_of::>()); + assert_eq!(32, size_of::>()); + assert_eq!(32, size_of::>()); + assert_eq!(48, size_of::>()); + assert_eq!(56, size_of::>()); + assert_eq!(56, size_of::>()); + assert_eq!(64, size_of::>()); + assert_eq!(120, size_of::>()); + assert_eq!(24, size_of::()); + + assert_eq!(32, size_of::>>()); + assert_eq!(32, size_of::>>()); + assert_eq!(64, size_of::>>()); + assert_eq!(120, size_of::>>()); + assert_eq!(32, size_of::>()); + } +} + // Proc macro reexports // // These exist so that our docs can use intra-doc links. From 675dd34baefcc45666fc740cbfefe58889f8ddf7 Mon Sep 17 00:00:00 2001 From: "Shane F. Carr" Date: Fri, 12 May 2023 11:10:56 -0700 Subject: [PATCH 2/2] Fix --- utils/zerovec/src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/zerovec/src/lib.rs b/utils/zerovec/src/lib.rs index 79355f388d5..2c63cac507e 100644 --- a/utils/zerovec/src/lib.rs +++ b/utils/zerovec/src/lib.rs @@ -316,7 +316,7 @@ mod tests { assert_eq!(56, size_of::>()); assert_eq!(64, size_of::>()); assert_eq!(120, size_of::>()); - assert_eq!(24, size_of::()); + assert_eq!(32, size_of::()); assert_eq!(32, size_of::>>()); assert_eq!(32, size_of::>>());