// the argument is org.aspectj.lang.JoinPoint, check that this is added
assertFalse("printParameters method should have arguments",pe2.getParameterTypes().isEmpty());
}
+
+ public void testParameterizedEnum_pr126316() {
+ runTest("E extends Enum(E) again");
+ }
/*
* @AspectJ bugs and enhancements
</compile>
</ajc-test>
+ <ajc-test dir="bugs151" title="E extends Enum(E) again">
+ <compile files="Pr126316.aj" options="-1.5"/>
+ </ajc-test>
<!-- New features down here... when they arent big enough to have their own test file -->
/**
* only for use when resolving GenericsWildcardTypeX or a TypeVariableReferenceType
*/
- protected BoundedReferenceType(String sig, World world) {
- super(sig,world);
+ protected BoundedReferenceType(String sig, String sigErasure, World world) {
+ super(sig, sigErasure, world);
setUpperBound(world.resolve(UnresolvedType.OBJECT));
setDelegate(new ReferenceTypeReferenceTypeDelegate((ReferenceType)getUpperBound()));
}
public ReferenceType(String signature, World world) {
super(signature, world);
}
+
+ public ReferenceType(String signature, String signatureErasure, World world) {
+ super(signature,signatureErasure, world);
+ }
/**
* Constructor used when creating a parameterized type.
public TypeVariableReferenceType(
TypeVariable aTypeVariable,
World aWorld) {
- super(aTypeVariable.getFirstBound().getSignature(),aWorld);
+ super(aTypeVariable.getFirstBound().getSignature(),
+ aTypeVariable.getFirstBound().getErasureSignature(),
+ aWorld);
this.typeVariable = aTypeVariable;
this.isExtends = false;
this.isSuper = false;
// might be a problem here, not sure '?' should make it to here as a signature, the
// proper signature for wildcard '?' is '*'
// fault in generic wildcard, can't be done earlier because of init issues
- ResolvedType something = new BoundedReferenceType("?",this);
+ ResolvedType something = new BoundedReferenceType("?","Ljava/lang/Object",this);
typeMap.put("?",something);
return something;
}