#![feature(const_trait_impl)] trait Bar {} trait Foo { fn a(); fn b() where Self: ~const Bar; fn c(); } const fn test1() { T::a(); T::b(); //~^ ERROR the trait bound T::c::(); //~^ ERROR the trait bound } const fn test2() { T::a(); T::b(); T::c::(); } fn test3() { T::a(); T::b(); //~^ ERROR the trait bound T::c::(); //~^ ERROR the trait bound } fn test4() { T::a(); T::b(); T::c::(); } fn main() {}