rust/tests/ui/traits/const-traits/trait-where-clause.rs

29 lines
452 B
Rust

#![feature(const_trait_impl)]
#[const_trait]
trait Bar {}
trait Foo {
fn a();
fn b() where Self: [const] Bar;
//~^ ERROR `[const]` is not allowed here
fn c<T: [const] Bar>();
//~^ ERROR `[const]` is not allowed here
}
fn test1<T: Foo>() {
T::a();
T::b();
//~^ ERROR the trait bound
T::c::<T>();
//~^ ERROR the trait bound
}
fn test2<T: Foo + Bar>() {
T::a();
T::b();
T::c::<T>();
}
fn main() {}