--- /dev/null
+
+public class Bean {}
--- /dev/null
+public interface Identifiable<T> {
+ T getId();
+
+ void setId(T t);
+}
--- /dev/null
+public aspect IdentifiableAspect {
+ declare parents: Bean implements LongIdentifiable;
+
+ private T Identifiable<T>.m_id;
+
+ public T Identifiable<T>.getId() {
+ return m_id;
+ }
+
+ public void Identifiable<T>.setId(T id) {
+ m_id= id;
+ }
+
+ public static void main(String []argv) {
+ Bean b = new Bean();
+ b.setId(37L);
+ long l = b.getId();
+ if (l!=37L) throw new RuntimeException("id should be 37");
+ }
+}
--- /dev/null
+public interface LongIdentifiable extends Identifiable<Long> {
+}
public void testGenericITDsAndAbstractMethodError_pr102357() { runTest("generic itds and abstract method error");}
*/
+// public void testGenericAspects_pr115237() { runTest("aspectOf and generic aspects");}
public void testClassFormatError_pr114436() { runTest("ClassFormatError binary weaving perthis");}
public void testParserException_pr115788() { runTest("parser exception");}
public void testPossibleStaticImports_pr113066_1() { runTest("possible static imports bug - 1");}
public void testGenericsOverrides_1() { runTest("generics and ITD overrides - 1"); }
public void testGenericsOverrides_2() { runTest("generics and ITD overrides - 2"); }
public void testGenericsOverrides_3() { runTest("generics and ITD overrides - 3"); }
+ public void testGenericsOverrides_4() { runTest("generics and ITD overrides - 4"); }
public void testPR88606() {
runTest("Parameterized types on introduced fields not correctly recognized");
</compile>
<run class="IdentifiableAspect"/>
</ajc-test>
+
+ <ajc-test dir="java5/generics/bugs/lists/case4" title="generics and ITD overrides - 4">
+ <compile files="Identifiable.java,Bean.java,LongIdentifiable.java,IdentifiableAspect.java" options="-1.5">
+ </compile>
+ <run class="IdentifiableAspect"/>
+ </ajc-test>
<!-- Currently a warning doesn't occur if the annotation is already on the field
(see bug 113029). If this is fixed, need to add check for this warning to this