summaryrefslogtreecommitdiffstats
path: root/src/test/ui/consts/issue-66693-panic-in-array-len.rs
blob: fc0dcd7a44daa046dc50374d8159b3e3295440a3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// This is a separate test from `issue-66693.rs` because array lengths are evaluated
// in a separate stage before `const`s and `statics` and so the error below is hit and
// the compiler exits before generating errors for the others.

fn main() {
    let _ = [0i32; panic!(2f32)];
    //~^ ERROR: argument to `panic!()` in a const context must have type `&str`

    // ensure that conforming panics are handled correctly
    let _ = [false; panic!()];
    //~^ ERROR: evaluation of constant value failed

    // typechecking halts before getting to this one
    let _ = ['a', panic!("panic in array len")];
}