diff --git a/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/checkers/declaration/FirExpectActualDeclarationChecker.kt b/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/checkers/declaration/FirExpectActualDeclarationChecker.kt index 003601cdb42..aa7a1872e53 100644 --- a/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/checkers/declaration/FirExpectActualDeclarationChecker.kt +++ b/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/checkers/declaration/FirExpectActualDeclarationChecker.kt @@ -145,14 +145,10 @@ object FirExpectActualDeclarationChecker : FirBasicDeclarationChecker() { val source = declaration.source if (!declaration.isActual) { - if (matchingCompatibilityToMembersMap.allMismatches()) return - - if (ExpectActualMatchingCompatibility.MatchedSuccessfully in matchingCompatibilityToMembersMap) { - if (checkActual) { - reporter.reportOn(source, FirErrors.ACTUAL_MISSING, context) - } - return + if (checkActual && ExpectActualMatchingCompatibility.MatchedSuccessfully in matchingCompatibilityToMembersMap) { + reporter.reportOn(source, FirErrors.ACTUAL_MISSING, context) } + return } when { @@ -297,10 +293,6 @@ object FirExpectActualDeclarationChecker : FirBasicDeclarationChecker() { ) } - fun Map, *>.allMismatches(): Boolean { - return keys.all { it is ExpectActualMatchingCompatibility.Mismatch } - } - // we don't require `actual` modifier on // - annotation constructors, because annotation classes can only have one constructor // - value class primary constructors, because value class must have primary constructor