// check-pass #![feature(generic_const_exprs)] #![allow(incomplete_features)] struct Foo([u8; N as usize]) where [(); N as usize]:; struct Bar([u8; (N + 2) as usize]) where [(); (N + 2) as usize]:; // unifying with subtrees struct Evaluatable; fn foo() where Evaluatable<{N as usize as u16 }>: { let _ = Foo::([1; N as usize]); } fn main() {}