//@ run-pass
#![allow(dead_code)]
trait Foo {
fn f(&self) {
println!("Hello!");
self.g();
}
fn g(&self);
struct A {
x: isize
impl Foo for A {
fn g(&self) {
println!("Goodbye!");
pub fn main() {
let a = A { x: 1 };
a.f();