Support for new double colon expressions in type checker
Despite the fact that the LHS of a double colon expression is now KtExpression instead of KtUserType, we must still consider it a type for callable references to work. Extract and reuse relevant parts of QualifiedExpressionResolver and TypeResolver to support this behavior
This commit is contained in:
+16
@@ -0,0 +1,16 @@
|
||||
// !CHECK_TYPE
|
||||
|
||||
class Foo
|
||||
|
||||
fun Foo?.bar() {}
|
||||
|
||||
fun test() {
|
||||
val r1 = Foo ?:: bar
|
||||
checkSubtype<(Foo?) -> Unit>(r1)
|
||||
|
||||
val r2 = Foo ? :: bar
|
||||
checkSubtype<(Foo?) -> Unit>(r2)
|
||||
|
||||
val r3 = Foo ? ? :: bar
|
||||
checkSubtype<(Foo?) -> Unit>(r3)
|
||||
}
|
||||
Reference in New Issue
Block a user