[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:
Nikolay Lunyak
2023-10-04 13:47:57 +03:00
committed by Space Team
parent a9ceae9667
commit 41c3f98419
7 changed files with 23 additions and 132 deletions
@@ -1,4 +1,7 @@
compiler/testData/cli/metadata/inheritorOfExpectSealedClass/common-2.kt:1:21: error: 'actual class Base : Any' has no corresponding expected declaration
actual sealed class Base
^
compiler/testData/cli/metadata/inheritorOfExpectSealedClass/common-3.kt:1:17: error: unresolved reference '<init>'.
class Derived : Base()
^
COMPILATION_ERROR