interface Foo { function foo():T; } class Bar implements Foo { public function foo() return null; // Warning: Unbound type parameter foo.T } function main() {}