--- /dev/null
+public abstract class AbstractNode < SelfNode extends AbstractNode<SelfNode, DualNode>, DualNode extends AbstractNode<DualNode, SelfNode> > {
+}
+
+class SubClass extends AbstractNode<A,B> {
+}
+
+class A extends AbstractNode<A,B> { }
+class B extends AbstractNode<B,A> { }
+
+abstract class Mad
+<
+ Id extends Comparable<Id>,
+ Np extends Mad<Id, Np, Nt, Np, Nt>,
+ Nt extends Mad<Id, Np, Nt, Nt, Np>,
+ SelfNode extends Mad<Id, Np, Nt, SelfNode, DualNode>,
+ DualNode extends Mad<Id, Np, Nt, DualNode, SelfNode>
+>
+{
+}
*/
public class Ajc160Tests extends org.aspectj.testing.XMLBasedAjcTestCase {
+ public void testComplexGenerics_pr168044() { runTest("complex generics - 1");}
public void testIncorrectlyMarkingFieldTransient_pr168063() { runTest("incorrectly marking field transient");}
public void testInheritedAnnotations_pr169706() { runTest("inherited annotations");}
public void testGenericFieldNPE_pr165885() { runTest("generic field npe");}
</compile>
</ajc-test>
+ <ajc-test dir="bugs160/pr168044" title="complex generics - 1">
+ <compile files="AbstractNode.java" options="-1.5">
+ </compile>
+ </ajc-test>
+
<ajc-test dir="bugs160/pr168063" title="incorrectly marking field transient">
<compile files="A.java"/>
<run class="A">