From 15c0901a72dfd2704cfed8ad3f953d2cb00b4d04 Mon Sep 17 00:00:00 2001 From: Denis Zharkov Date: Mon, 12 Sep 2016 16:32:11 +0300 Subject: [PATCH] Minor. Add covariant override for TypeParameterDescriptor.original --- .../src/org/jetbrains/kotlin/resolve/TypeResolver.kt | 2 +- .../kotlin/descriptors/TypeParameterDescriptor.java | 4 ++++ .../descriptors/impl/AbstractTypeParameterDescriptor.java | 6 ++++++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/TypeResolver.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/TypeResolver.kt index 5842bdc464e..1789e7d162b 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/TypeResolver.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/TypeResolver.kt @@ -671,7 +671,7 @@ class TypeResolver( fromIndex: Int, constructorParameters: List ) = constructorParameters.subList(fromIndex, constructorParameters.size).map { - TypeProjectionImpl((it.original as TypeParameterDescriptor).defaultType) + TypeProjectionImpl(it.original.defaultType) } fun resolveTypeProjections( diff --git a/core/descriptors/src/org/jetbrains/kotlin/descriptors/TypeParameterDescriptor.java b/core/descriptors/src/org/jetbrains/kotlin/descriptors/TypeParameterDescriptor.java index e8b93d45684..ea8382a6e7a 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/descriptors/TypeParameterDescriptor.java +++ b/core/descriptors/src/org/jetbrains/kotlin/descriptors/TypeParameterDescriptor.java @@ -42,6 +42,10 @@ public interface TypeParameterDescriptor extends ClassifierDescriptor { @Deprecated // Use the static method DescriptorSubstitutor.substituteTypeParameters() TypeParameterDescriptor substitute(@NotNull TypeSubstitutor substitutor); + @NotNull + @Override + TypeParameterDescriptor getOriginal(); + int getIndex(); /** diff --git a/core/descriptors/src/org/jetbrains/kotlin/descriptors/impl/AbstractTypeParameterDescriptor.java b/core/descriptors/src/org/jetbrains/kotlin/descriptors/impl/AbstractTypeParameterDescriptor.java index 97959940a4a..d1e6c8b11ca 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/descriptors/impl/AbstractTypeParameterDescriptor.java +++ b/core/descriptors/src/org/jetbrains/kotlin/descriptors/impl/AbstractTypeParameterDescriptor.java @@ -128,6 +128,12 @@ public abstract class AbstractTypeParameterDescriptor extends DeclarationDescrip return defaultType.invoke(); } + @NotNull + @Override + public TypeParameterDescriptor getOriginal() { + return (TypeParameterDescriptor) super.getOriginal(); + } + @NotNull @Override @Deprecated