rust/tests/ui/inline-const/const-match-pat-generic.rs

32 lines
705 B
Rust
Raw Normal View History

2021-08-14 12:29:04 -05:00
#![allow(incomplete_features)]
#![feature(inline_const_pat)]
2021-08-14 12:29:04 -05:00
// rust-lang/rust#82518: ICE with inline-const in match referencing const-generic parameter
fn foo<const V: usize>() {
match 0 {
const { V } => {},
//~^ ERROR constant pattern depends on a generic parameter
//~| ERROR constant pattern depends on a generic parameter
_ => {},
}
}
const fn f(x: usize) -> usize {
x + 1
}
fn bar<const V: usize>() {
match 0 {
const { f(V) } => {},
//~^ ERROR constant pattern depends on a generic parameter
//~| ERROR constant pattern depends on a generic parameter
_ => {},
}
2021-08-14 12:29:04 -05:00
}
fn main() {
foo::<1>();
bar::<1>();
2021-08-14 12:29:04 -05:00
}