summaryrefslogtreecommitdiffstats
path: root/src/test/ui/const-generics/generic_const_exprs/abstract-const-as-cast-1.rs
blob: 06f00de13a30cc12b19239904f8afd10f0c68af3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// check-pass
#![feature(generic_const_exprs)]
#![allow(incomplete_features)]

struct Foo<const N: u8>([u8; N as usize])
where
    [(); N as usize]:;

struct Bar<const N: u8>([u8; (N + 2) as usize]) where [(); (N + 2) as usize]:;

// unifying with subtrees
struct Evaluatable<const N: u16>;
fn foo<const N: u8>() where Evaluatable<{N as usize as u16 }>: {
    let _ = Foo::<N>([1; N as usize]);
}


fn main() {}