[NI] Report not-a-class LHS error for callable reference arguments

^KT-37531 Fixed
This commit is contained in:
Pavel Kirpichenkov
2020-03-26 19:31:20 +03:00
parent b7ea590e23
commit 0abe3a6c39
4 changed files with 29 additions and 1 deletions
@@ -745,7 +745,13 @@ class PSICallResolver(
is DoubleColonLHS.Type -> {
val qualifiedExpression = ktExpression.receiverExpression!!
val qualifier = expressionTypingContext.trace.get(BindingContext.QUALIFIER, qualifiedExpression)
LHSResult.Type(qualifier, lhsResult.type.unwrap())
val classifier = lhsResult.type.constructor.declarationDescriptor
if (classifier !is ClassDescriptor) {
expressionTypingContext.trace.report(Errors.CALLABLE_REFERENCE_LHS_NOT_A_CLASS.on(ktExpression))
LHSResult.Error
} else {
LHSResult.Type(qualifier, lhsResult.type.unwrap())
}
}
}