IndexOutOfBounds fixed

This commit is contained in:
Andrey Breslav
2011-11-07 20:04:58 +03:00
parent 7d7d33b2ee
commit 3e59df95ef
2 changed files with 11 additions and 2 deletions
@@ -210,8 +210,14 @@ public class TypeResolver {
JetProjectionKind projectionKind = argumentElement.getProjectionKind();
JetType type;
if (projectionKind == JetProjectionKind.STAR) {
TypeParameterDescriptor parameterDescriptor = constructor.getParameters().get(i);
arguments.add(TypeUtils.makeStarProjection(parameterDescriptor));
List<TypeParameterDescriptor> parameters = constructor.getParameters();
if (parameters.size() > i) {
TypeParameterDescriptor parameterDescriptor = parameters.get(i);
arguments.add(TypeUtils.makeStarProjection(parameterDescriptor));
}
else {
arguments.add(new TypeProjection(Variance.OUT_VARIANCE, ErrorUtils.createErrorType("*")));
}
}
else {
// TODO : handle the Foo<in *> case
@@ -0,0 +1,3 @@
class B {}
val b : B<!WRONG_NUMBER_OF_TYPE_ARGUMENTS!><*><!> = 1