| //@ run-pass | |
| trait Foo { | |
| fn f(&self); | |
| } | |
| struct Bar { | |
| x: isize | |
| } | |
| trait Baz { | |
| fn g(&self); | |
| } | |
| impl<T:Baz> Foo for T { | |
| fn f(&self) { | |
| self.g(); | |
| } | |
| } | |
| impl Baz for Bar { | |
| fn g(&self) { | |
| println!("{}", self.x); | |
| } | |
| } | |
| pub fn main() { | |
| let y = Bar { x: 42 }; | |
| y.f(); | |
| } |