Fix NPE in ReferenceVariantsHelper
#KT-6500 Fixed
This commit is contained in:
@@ -786,7 +786,7 @@ public class DescriptorResolver {
|
|||||||
|
|
||||||
public static void checkUpperBoundType(
|
public static void checkUpperBoundType(
|
||||||
JetTypeReference upperBound,
|
JetTypeReference upperBound,
|
||||||
JetType upperBoundType,
|
@NotNull JetType upperBoundType,
|
||||||
boolean isClassObjectConstraint,
|
boolean isClassObjectConstraint,
|
||||||
BindingTrace trace
|
BindingTrace trace
|
||||||
) {
|
) {
|
||||||
|
|||||||
@@ -299,7 +299,7 @@ public class TypeUtils {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean canHaveSubtypes(JetTypeChecker typeChecker, JetType type) {
|
public static boolean canHaveSubtypes(JetTypeChecker typeChecker, @NotNull JetType type) {
|
||||||
if (type.isMarkedNullable()) {
|
if (type.isMarkedNullable()) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -173,7 +173,7 @@ public class ReferenceVariantsHelper(
|
|||||||
|
|
||||||
private fun getQualifierRuntimeType(receiver: JetExpression): JetType? {
|
private fun getQualifierRuntimeType(receiver: JetExpression): JetType? {
|
||||||
val type = context[BindingContext.EXPRESSION_TYPE, receiver]
|
val type = context[BindingContext.EXPRESSION_TYPE, receiver]
|
||||||
if (TypeUtils.canHaveSubtypes(JetTypeChecker.DEFAULT, type)) {
|
if (type != null && TypeUtils.canHaveSubtypes(JetTypeChecker.DEFAULT, type)) {
|
||||||
val evaluator = receiver.getContainingFile().getCopyableUserData(JetCodeFragment.RUNTIME_TYPE_EVALUATOR)
|
val evaluator = receiver.getContainingFile().getCopyableUserData(JetCodeFragment.RUNTIME_TYPE_EVALUATOR)
|
||||||
return evaluator?.invoke(receiver)
|
return evaluator?.invoke(receiver)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user