Bläddra i källkod

237447: test and fix: nested parameterization

tags/V1_6_1rc1
aclement 16 år sedan
förälder
incheckning
5c4b5d1fec

+ 3
- 0
tests/bugs161/pr237447/GenericClass.java Visa fil

@@ -0,0 +1,3 @@
public class GenericClass<Type extends Object> {
}


+ 16
- 0
tests/bugs161/pr237447/GenericGenericMemberClass.java Visa fil

@@ -0,0 +1,16 @@
public class GenericGenericMemberClass {

// this line never causes a problem
GenericClass<Double> [] genericMemberArray;

// this line causes compilation errors to be introduced
GenericClass< GenericClass<Double> >[] genericGenericMemberArray;

// uncommenting the following lines removes the compilation errors (very unexpectedly, for me at least)
// @SuppressWarnings("unused")
// private static final GenericClass< GenericClass<Double> > genericGenericMember = null;

public void test() {
}
}


+ 9
- 0
tests/bugs161/pr237447/SomeClass.java Visa fil

@@ -0,0 +1,9 @@
public class SomeClass {
GenericGenericMemberClass member;

public void someMethod() {
// commenting the following line will remove compilation errors (and mask the problem)
member.test();
}
}


+ 7
- 0
tests/bugs161/pr237447/UnrelatedAspect.java Visa fil

@@ -0,0 +1,7 @@
import org.aspectj.lang.annotation.*;

@SuppressAjWarnings
public aspect UnrelatedAspect {
before(): call(void UnrelatedClas*.unrelatedMethod()) {
}
}

+ 1
- 4
tests/src/org/aspectj/systemtest/ajc161/Ajc161Tests.java Visa fil

@@ -16,19 +16,16 @@ import java.util.Set;

import junit.framework.Test;

import org.aspectj.apache.bcel.classfile.JavaClass;
import org.aspectj.apache.bcel.classfile.LocalVariable;
import org.aspectj.apache.bcel.classfile.LocalVariableTable;
import org.aspectj.apache.bcel.classfile.Method;
import org.aspectj.asm.AsmManager;
import org.aspectj.asm.IRelationshipMap;
import org.aspectj.testing.Utils;
import org.aspectj.testing.XMLBasedAjcTestCase;
import org.aspectj.tools.ajc.Ajc;

public class Ajc161Tests extends org.aspectj.testing.XMLBasedAjcTestCase {
// AspectJ1.6.1
public void testSignatureProcessing_pr237447() { runTest("signature processing"); }
public void testGenericAtAround_pr237419() { runTest("generics ataround"); }
public void testGenericMarkerMatch_pr203367() { runTest("generic marker match"); }
// public void testSuperItds_pr134425() { runTest("super itds"); }

+ 5
- 0
tests/src/org/aspectj/systemtest/ajc161/ajc161.xml Visa fil

@@ -3,6 +3,11 @@
<!-- AspectJ v1.6.1 Tests -->
<suite>


<ajc-test dir="bugs161/pr237447" title="signature processing">
<compile files="GenericClass.java SomeClass.java GenericGenericMemberClass.java UnrelatedAspect.java" options="-1.5"/>
</ajc-test>

<ajc-test dir="bugs161/pr173978" title="lv table for around">
<compile files="TestAroundAspect.java Test.java" options="-1.5"/>
</ajc-test>

Laddar…
Avbryt
Spara