about summary refs log tree commit diff
path: root/src/test/codegen
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2021-01-15 09:27:21 +0000
committerbors <bors@rust-lang.org>2021-01-15 09:27:21 +0000
commit4e208f6a3afb42528878b0f3464e337c4bf3bbc8 (patch)
tree21529ff86f6f364980511a8cb4cb7a0001ae29c0 /src/test/codegen
parentdcf622eb70aebe16d40c5f88fa2a41fa7019541c (diff)
parent7286be15fa3f18ea4bd5b6ce481426f7d78e4a57 (diff)
downloadrust-4e208f6a3afb42528878b0f3464e337c4bf3bbc8.tar.gz
rust-4e208f6a3afb42528878b0f3464e337c4bf3bbc8.zip
Auto merge of #81035 - JohnTitor:rollup-9m03awf, r=JohnTitor
Rollup of 5 pull requests

Successful merges:

 - #80254 (Don't try to add nested predicate to Rustdoc auto-trait `ParamEnv`)
 - #80834 (Remove unreachable panics from VecDeque::{front/back}[_mut])
 - #80944 (Use Option::map_or instead of `.map(..).unwrap_or(..)`)
 - #81008 (Don't ICE when computing a layout of a generator tainted by errors)
 - #81023 (Remove doctree::Variant)

Failed merges:

 - #81033 (Remove useless `clean::Variant` struct)

r? `@ghost`
`@rustbot` modify labels: rollup
Diffstat (limited to 'src/test/codegen')
-rw-r--r--src/test/codegen/vecdeque_no_panic.rs19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/test/codegen/vecdeque_no_panic.rs b/src/test/codegen/vecdeque_no_panic.rs
new file mode 100644
index 00000000000..cbf420bada9
--- /dev/null
+++ b/src/test/codegen/vecdeque_no_panic.rs
@@ -0,0 +1,19 @@
+// This test checks that `VecDeque::front[_mut]()` and `VecDeque::back[_mut]()` can't panic.
+
+// compile-flags: -O
+// ignore-debug: the debug assertions get in the way
+
+#![crate_type = "lib"]
+
+use std::collections::VecDeque;
+
+// CHECK-LABEL: @dont_panic
+#[no_mangle]
+pub fn dont_panic(v: &mut VecDeque<usize>) {
+    // CHECK-NOT: expect
+    // CHECK-NOT: panic
+    v.front();
+    v.front_mut();
+    v.back();
+    v.back_mut();
+}