}
}
}
+
+ // check the aspect was not declared generic, only abstract aspects can have type params
+ if (typeParameters != null && typeParameters.length > 0) {
+ scope.problemReporter().signalError(sourceStart(), sourceEnd(),
+ "only abstract aspects can have type parameters");
+ }
}
if (this.enclosingType != null) {
ignoreFurtherInvestigation = true;
return;
}
+
+ // if super type is generic, check that we have fully parameterized it
+ if (superType.isRawType()) {
+ scope.problemReporter().signalError(sourceStart, sourceEnd,
+ "a generic super-aspect must be fully parameterized in an extends clause");
+ ignoreFurtherInvestigation = true;
+ return;
+ }
}
}