Skip to content

Commit c87d93a

Browse files
committed
Fix Miri leak detection in alloc_slice_clone test
1 parent d5d6f1f commit c87d93a

1 file changed

Lines changed: 8 additions & 1 deletion

File tree

crates/oxc_allocator/tests/bump/tests.rs

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,14 @@ fn alloc_slice_copy() {
122122
fn alloc_slice_clone() {
123123
let b = Bump::new();
124124

125-
let src = vec![vec![0], vec![1, 2], vec![3, 4, 5], vec![6, 7, 8, 9]];
125+
// Original bumpalo test uses `Vec<Vec<i32>>`, but bump allocators don't run
126+
// destructors, so the inner Vecs' heap buffers would leak. Use a non-Copy
127+
// Clone type that doesn't heap-allocate to avoid Miri leak detection.
128+
// (bumpalo works around this with `-Zmiri-ignore-leaks`.)
129+
#[derive(Clone, Debug, PartialEq, Eq)]
130+
struct Val(i32);
131+
132+
let src = vec![Val(0), Val(1), Val(2), Val(3)];
126133
let dst = b.alloc_slice_clone(&src);
127134

128135
assert_eq!(src, dst);

0 commit comments

Comments
 (0)