interface IFoo : GLib.Object {
	public abstract int foo { get; }
}

abstract class Foo : GLib.Object, IFoo {
	public abstract int foo { get; }
}

class Bar : Foo {
	public override int foo { get { return 0; } }
	public Bar () {
	}
}

void main () {
	var bar = new Bar ();
	var foo = bar.foo;
}
