rust/tests/ui/specialization/defaultimpl/specialization-trait-item-not-implemented.rs

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

24 lines
521 B
Rust
Raw Normal View History

// Tests that default impls do not have to supply all items but regular impls do.
2020-05-17 03:22:48 -05:00
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
trait Foo {
fn foo_one(&self) -> &'static str;
fn foo_two(&self) -> &'static str;
}
struct MyStruct;
default impl<T> Foo for T {
fn foo_one(&self) -> &'static str {
"generic"
}
}
impl Foo for MyStruct {}
//~^ ERROR not all trait items implemented, missing: `foo_two` [E0046]
fn main() {
println!("{}", MyStruct.foo_one());
}