rust/tests/ui/inline-const/pat-unsafe.rs

34 lines
692 B
Rust

// check-pass
// revisions: mir thir
// [mir]ignore-test This is currently broken
// [thir]compile-flags: -Z thir-unsafeck
#![allow(incomplete_features)]
#![warn(unused_unsafe)]
#![feature(inline_const_pat)]
const unsafe fn require_unsafe() -> usize {
1
}
fn main() {
unsafe {
match () {
const {
require_unsafe();
unsafe {}
//~^ WARNING unnecessary `unsafe` block
} => (),
}
match 1 {
const {
unsafe {}
//~^ WARNING unnecessary `unsafe` block
require_unsafe()
}..=4 => (),
_ => (),
}
}
}