// Decp a generic interface abstract aspect GenericAspect<A> { declare parents: A implements SimpleI; interface SimpleI<X> {} } aspect GenericAspectB extends GenericAspect<Base> { public static void main(String []argv) { Base b = new Base(); if (!(b instanceof SimpleI)) throw new RuntimeException("Base should implement SimpleI!"); } } class Base {}