25 lines
476 B
Rust
25 lines
476 B
Rust
#![allow(incomplete_features)]
|
|
#![feature(generic_const_exprs)]
|
|
|
|
trait True {}
|
|
|
|
struct Is<const V: bool>;
|
|
|
|
impl True for Is<true> {}
|
|
|
|
fn g<T>()
|
|
//~^ NOTE required by a bound in this
|
|
where
|
|
Is<{ std::mem::size_of::<T>() == 0 }>: True,
|
|
//~^ NOTE required by a bound in `g`
|
|
//~| NOTE required by this bound in `g`
|
|
{
|
|
}
|
|
|
|
fn main() {
|
|
g::<usize>();
|
|
//~^ ERROR mismatched types
|
|
//~| NOTE expected `false`, found `true`
|
|
//~| NOTE expected constant `false`
|
|
}
|