diff --git a/crates/bevy_ecs/src/storage/blob_vec.rs b/crates/bevy_ecs/src/storage/blob_vec.rs index 416ce2d964c5f..a63c314fd9aa8 100644 --- a/crates/bevy_ecs/src/storage/blob_vec.rs +++ b/crates/bevy_ecs/src/storage/blob_vec.rs @@ -472,7 +472,7 @@ mod tests { use crate::{component::Component, ptr::OwningPtr, world::World}; use super::BlobVec; - use std::{alloc::Layout, cell::RefCell, rc::Rc}; + use std::{alloc::Layout, cell::RefCell, mem, rc::Rc}; // SAFETY: The pointer points to a valid value of type `T` and it is safe to drop this value. unsafe fn drop_ptr(x: OwningPtr<'_>) { @@ -626,7 +626,9 @@ mod tests { let mut count = 0; let mut q = world.query::<&Zst>(); - for &Zst in q.iter(&world) { + for zst in q.iter(&world) { + // Ensure that the references returned are properly aligned. + assert_eq!(zst as *const Zst as usize % mem::align_of::(), 0); count += 1; }