From 698f8c2f01ea549d77d7dc3338a12e04c11057b9 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 17 Apr 2024 14:02:58 +0200 Subject: Adding upstream version 1.64.0+dfsg1. Signed-off-by: Daniel Baumann --- src/test/ui/oom_unwind.rs | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 src/test/ui/oom_unwind.rs (limited to 'src/test/ui/oom_unwind.rs') diff --git a/src/test/ui/oom_unwind.rs b/src/test/ui/oom_unwind.rs new file mode 100644 index 000000000..d036c817a --- /dev/null +++ b/src/test/ui/oom_unwind.rs @@ -0,0 +1,23 @@ +// compile-flags: -Z oom=panic +// run-pass +// no-prefer-dynamic +// needs-unwind +// only-linux + +#![feature(bench_black_box)] + +use std::hint::black_box; +use std::mem::forget; +use std::panic::catch_unwind; + +fn main() { + let panic = catch_unwind(|| { + // This is guaranteed to exceed even the size of the address space + for _ in 0..16 { + // Truncates to a suitable value for both 32-bit and 64-bit targets. + let alloc_size = 0x1000_0000_1000_0000u64 as usize; + forget(black_box(vec![0u8; alloc_size])); + } + }); + assert!(panic.is_err()); +} -- cgit v1.2.3