rust/tests/ui/rfcs/rfc-2632-const-trait-impl/const-default-method-bodies.rs

30 lines
415 B
Rust

#![feature(const_trait_impl, effects)]
#[const_trait]
trait ConstDefaultFn: Sized {
fn b(self);
fn a(self) {
self.b();
}
}
struct NonConstImpl;
struct ConstImpl;
impl ConstDefaultFn for NonConstImpl {
fn b(self) {}
}
impl const ConstDefaultFn for ConstImpl {
fn b(self) {}
}
const fn test() {
NonConstImpl.a();
//~^ ERROR the trait bound
ConstImpl.a();
}
fn main() {}