Do not consider error results successful in '::' LHS resolution
Fixes EA-81649
This commit is contained in:
+20
@@ -0,0 +1,20 @@
|
||||
// Different modules are important for this test because otherwise everything is analyzed at once and some errors
|
||||
// already exist in the binding context when we're analyzing "User::surname".
|
||||
// (The assertion at DoubleColonExpressionResolver.checkNoExpressionOnLHS is only performed when there are no errors in the binding context)
|
||||
|
||||
// MODULE: m1
|
||||
// FILE: bar.kt
|
||||
|
||||
fun <T> bar(<!UNUSED_PARAMETER!>ff<!>: <!UNRESOLVED_REFERENCE!>Err<!>.() -> Unit) {
|
||||
}
|
||||
|
||||
// MODULE: m2(m1)
|
||||
// FILE: foo.kt
|
||||
|
||||
data class User(val surname: String)
|
||||
|
||||
fun foo() {
|
||||
bar<String> {
|
||||
<!UNUSED_EXPRESSION!>User::surname<!>
|
||||
}
|
||||
}
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
// -- Module: <m1> --
|
||||
package
|
||||
|
||||
public fun </*0*/ T> bar(/*0*/ ff: [ERROR : Err].() -> kotlin.Unit): kotlin.Unit
|
||||
|
||||
|
||||
// -- Module: <m2> --
|
||||
package
|
||||
|
||||
public fun </*0*/ T> bar(/*0*/ ff: [ERROR : Err].() -> kotlin.Unit): kotlin.Unit
|
||||
public fun foo(): kotlin.Unit
|
||||
|
||||
public final data class User {
|
||||
public constructor User(/*0*/ surname: kotlin.String)
|
||||
public final val surname: kotlin.String
|
||||
public final operator /*synthesized*/ fun component1(): kotlin.String
|
||||
public final /*synthesized*/ fun copy(/*0*/ surname: kotlin.String = ...): User
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
Reference in New Issue
Block a user