diff --git a/tests/compile-fail/oom.rs b/tests/compile-fail/oom.rs new file mode 100644 index 000000000000..83109a77e620 --- /dev/null +++ b/tests/compile-fail/oom.rs @@ -0,0 +1,11 @@ +#![feature(custom_attribute)] +#![miri(memory_size="0")] + +fn bar() { + let x = 5; + assert_eq!(x, 6); +} + +fn main() { //~ ERROR tried to allocate 4 more bytes, but only 0 bytes are free of the 0 byte memory + bar(); +} diff --git a/tests/compile-fail/oom2.rs b/tests/compile-fail/oom2.rs new file mode 100644 index 000000000000..63c51dbaa7d2 --- /dev/null +++ b/tests/compile-fail/oom2.rs @@ -0,0 +1,39 @@ +#![feature(custom_attribute)] +#![miri(memory_size="1000")] + +fn bar(i: i32) { + if i < 1000 { + bar(i + 1) //~ ERROR tried to allocate 4 more bytes, but only 1 bytes are free of the 1000 byte memory + //~^NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + //~|NOTE inside call to bar + } +} + +fn main() { //~NOTE inside call to main + bar(1); + //~^NOTE inside call to bar +}