Browse Source

267559: generic itd npe: fix

tags/pre268419
aclement 15 years ago
parent
commit
a45da4ff22
1 changed files with 30 additions and 0 deletions
  1. 30
    0
      weaver5/java5-testsrc/org/aspectj/weaver/ReferenceTypeTestCase.java

+ 30
- 0
weaver5/java5-testsrc/org/aspectj/weaver/ReferenceTypeTestCase.java View File

@@ -439,6 +439,36 @@ public class ReferenceTypeTestCase extends TestCase {
// error: arrayListOfString = listOfNumber;
assertFalse(ajArrayListOfString.isAssignableFrom(ajListOfNumber));
assertFalse(ajArrayListOfString.isCoerceableFrom(ajListOfNumber));

}

static class ClassA<T> {
}

static interface IMarker<H> {
}

static class ClassB<T> implements IMarker<ClassA<T>> {
}

static class ClassC<T> implements IMarker<T> {
}

public void testAssignability_pr267559() {
ClassB cb = new ClassB();
ClassB cb2 = new ClassB();

ReferenceType rcb = resolve("Lorg/aspectj/weaver/ReferenceTypeTestCase$ClassB;");
ReferenceType rcb2 = resolve("Lorg/aspectj/weaver/ReferenceTypeTestCase$ClassB;");
boolean b = rcb.isAssignableFrom(rcb2);
assertTrue(b);
b = rcb2.isAssignableFrom(rcb);
assertTrue(b);

rcb = resolve("Porg/aspectj/weaver/ReferenceTypeTestCase$IMarker<Porg/aspectj/weaver/ReferenceTypeTestCase$ClassA<TT;>;>;");
rcb2 = resolve("Lorg/aspectj/weaver/ReferenceTypeTestCase$ClassB;");
b = rcb.isAssignableFrom(rcb2);
assertTrue(b);
}

public void testAssignable03_method_m4() {

Loading…
Cancel
Save