import java.util.*;
class Base {
}
public class GenericMethodITD13 {
public static void main(String[] argv) {
List as = new ArrayList();
new Base().crazy(as); // ok. A implements Foo where C extends A !!
}
}
interface Foo {
public void m(T t);
}
class C extends A { }
class A implements Foo {
public void m(C a) {}
}
aspect X {
> void Base.crazy(List lr) {}
}