Auto merge of #3117 - RalfJung:catch-panic-loop, r=RalfJung

avoid confusing loop in catch_panic test

Fixes https://github.com/rust-lang/miri/issues/3115
This commit is contained in:
bors 2023-10-10 07:48:56 +00:00
commit 2b0c8a7413

View file

@ -5,6 +5,7 @@
use std::cell::Cell;
use std::panic::{catch_unwind, AssertUnwindSafe};
use std::process;
thread_local! {
static MY_COUNTER: Cell<usize> = Cell::new(0);
@ -62,26 +63,26 @@ fn main() {
// Built-in panics; also make sure the message is right.
test(Some("index out of bounds: the len is 3 but the index is 4"), |_old_val| {
let _val = [0, 1, 2][4];
loop {}
process::abort()
});
test(Some("attempt to divide by zero"), |_old_val| {
let _val = 1 / 0;
loop {}
process::abort()
});
test(Some("align_offset: align is not a power-of-two"), |_old_val| {
let _ = std::ptr::null::<u8>().align_offset(3);
loop {}
process::abort()
});
// Assertion and debug assertion
test(None, |_old_val| {
assert!(false);
loop {}
process::abort()
});
test(None, |_old_val| {
debug_assert!(false);
loop {}
process::abort()
});
eprintln!("Success!"); // Make sure we get this in stderr