[FIR] Make resolution of classes in FirProvider more reasonable.
See the `privateInFile.fir.kt` test. Type mismatches are simply confusing. `inheritorOfExpectSealedClass.out` reports unresolved reference probably because now it resolves into the expect declaration, rather than the actual one. K1 doesn't report UNRESOLVED_REFERENCE in this case. But this is red code anyway. And this behavior still depends on the order in which the compiler receives both the declarations. ^KT-59927 ^KT-62567
This commit is contained in:
committed by
Space Team
parent
a9ceae9667
commit
41c3f98419
+4
-4
@@ -16,14 +16,14 @@ class <!PACKAGE_OR_CLASSIFIER_REDECLARATION!>A<!> {
|
||||
|
||||
}
|
||||
|
||||
class <!PACKAGE_OR_CLASSIFIER_REDECLARATION!>B<!> : <!FINAL_SUPERTYPE, SUPERTYPE_NOT_INITIALIZED!>A<!> {
|
||||
<!CONFLICTING_OVERLOADS!><!NOTHING_TO_OVERRIDE!>override<!> fun rest(s: String)<!> {}
|
||||
class <!PACKAGE_OR_CLASSIFIER_REDECLARATION!>B<!> : <!SUPERTYPE_NOT_INITIALIZED!>A<!> {
|
||||
<!CONFLICTING_OVERLOADS!>override fun rest(s: String)<!> {}
|
||||
|
||||
<!CONFLICTING_OVERLOADS!>fun rest(s: String)<!> {}
|
||||
<!CONFLICTING_OVERLOADS!>fun <!VIRTUAL_MEMBER_HIDDEN!>rest<!>(s: String)<!> {}
|
||||
|
||||
fun rest(l: Long) {}
|
||||
|
||||
<!NOTHING_TO_OVERRIDE!>override<!> val u = 310
|
||||
override val u = 310
|
||||
}
|
||||
|
||||
interface <!PACKAGE_OR_CLASSIFIER_REDECLARATION!>B<!>
|
||||
|
||||
Reference in New Issue
Block a user