diff options
| author | Ralf Jung <post@ralfj.de> | 2023-07-03 13:58:42 +0200 |
|---|---|---|
| committer | Ralf Jung <post@ralfj.de> | 2023-07-03 13:58:42 +0200 |
| commit | a68afa2211a4b42bd1094ccbc7500040071b4ded (patch) | |
| tree | 217bd533985c5934fec327c0b787880a996c7445 | |
| parent | a8b6ec16676ded3b90ddf44e33fe6dc9b4dfa23e (diff) | |
vec tets: ensure pointer is still writeable
| -rw-r--r-- | src/tools/miri/tests/pass/vec.rs | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/tools/miri/tests/pass/vec.rs b/src/tools/miri/tests/pass/vec.rs index 048f7d1c351..4ab2bcb7f22 100644 --- a/src/tools/miri/tests/pass/vec.rs +++ b/src/tools/miri/tests/pass/vec.rs @@ -100,7 +100,7 @@ fn vec_push_ptr_stable() { v.push(0); let v0 = unsafe { &mut *(&mut v[0] as *mut _) }; // laundering the lifetime -- we take care that `v` does not reallocate, so that's okay. v.push(1); - let _val = *v0; + *v0 = *v0; } fn vec_extend_ptr_stable() { @@ -109,23 +109,23 @@ fn vec_extend_ptr_stable() { let v0 = unsafe { &mut *(&mut v[0] as *mut _) }; // laundering the lifetime -- we take care that `v` does not reallocate, so that's okay. // `slice::Iter` (with `T: Copy`) specialization v.extend(&[1]); - let _val = *v0; + *v0 = *v0; // `vec::IntoIter` specialization v.extend(vec![2]); - let _val = *v0; + *v0 = *v0; // `TrustedLen` specialization v.extend(std::iter::once(3)); - let _val = *v0; + *v0 = *v0; // base case v.extend(std::iter::once(3).filter(|_| true)); - let _val = *v0; + *v0 = *v0; } fn vec_truncate_ptr_stable() { let mut v = vec![0; 10]; let v0 = unsafe { &mut *(&mut v[0] as *mut _) }; // laundering the lifetime -- we take care that `v` does not reallocate, so that's okay. v.truncate(5); - let _val = *v0; + *v0 = *v0; } fn push_str_ptr_stable() { |
