blob: 51c740fd7293729fba45d47ace6f49a1687c4f0f [file] [log] [blame] [edit]
//@ check-pass
pub struct Foo;
pub trait Bar {
fn bar(&self);
}
pub trait Baz {
fn baz(&self) { }
}
impl<T: Baz> Bar for T {
fn bar(&self) {}
}
impl Baz for Foo {}
pub fn foo(t: Box<Foo>) {
t.bar(); // ~Foo doesn't implement Baz
(*t).bar(); // ok b/c Foo implements Baz
}
fn main() {}