2021-08-27 18:04:57 +02:00
|
|
|
#![feature(generic_const_exprs)]
|
2021-06-08 08:02:12 +01:00
|
|
|
#![allow(incomplete_features)]
|
|
|
|
|
2021-06-09 19:28:41 +01:00
|
|
|
struct Evaluatable<const N: u128> {}
|
2021-06-08 08:02:12 +01:00
|
|
|
|
|
|
|
struct Foo<const N: u8>([u8; N as usize])
|
|
|
|
//~^ Error: unconstrained generic constant
|
|
|
|
//~| help: try adding a `where` bound using this expression: `where [(); N as usize]:`
|
|
|
|
where
|
2021-06-09 19:28:41 +01:00
|
|
|
Evaluatable<{N as u128}>:;
|
|
|
|
|
|
|
|
struct Foo2<const N: u8>(Evaluatable::<{N as u128}>) where Evaluatable<{N as usize as u128 }>:;
|
|
|
|
//~^ Error: unconstrained generic constant
|
|
|
|
//~| help: try adding a `where` bound using this expression: `where [(); {N as u128}]:`
|
|
|
|
|
|
|
|
struct Bar<const N: u8>([u8; (N + 2) as usize]) where [(); (N + 1) as usize]:;
|
2021-06-10 14:53:38 +01:00
|
|
|
//~^ Error: unconstrained generic constant
|
2021-06-09 19:28:41 +01:00
|
|
|
//~| help: try adding a `where` bound using this expression: `where [(); (N + 2) as usize]:`
|
2021-06-08 08:02:12 +01:00
|
|
|
|
|
|
|
fn main() {}
|