diff --git a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/CommonBackendErrors.kt b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/CommonBackendErrors.kt index 31affdc0dfb..a0e84958a3d 100644 --- a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/CommonBackendErrors.kt +++ b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/CommonBackendErrors.kt @@ -6,9 +6,10 @@ package org.jetbrains.kotlin.backend.common import com.intellij.psi.PsiElement +import org.jetbrains.kotlin.backend.common.BackendDiagnosticRenderers.DECLARATION_NAME import org.jetbrains.kotlin.backend.common.BackendDiagnosticRenderers.EXPECT_ACTUAL_ANNOTATION_INCOMPATIBILITY import org.jetbrains.kotlin.backend.common.BackendDiagnosticRenderers.INCOMPATIBILITY -import org.jetbrains.kotlin.backend.common.BackendDiagnosticRenderers.DECLARATION_NAME +import org.jetbrains.kotlin.backend.common.BackendDiagnosticRenderers.MISMATCH import org.jetbrains.kotlin.backend.common.BackendDiagnosticRenderers.EVALUATION_ERROR_EXPLANATION import org.jetbrains.kotlin.backend.common.BackendDiagnosticRenderers.SYMBOL_OWNER_DECLARATION_FQ_NAME import org.jetbrains.kotlin.descriptors.ModuleDescriptor @@ -25,11 +26,13 @@ import org.jetbrains.kotlin.ir.symbols.IrSymbol import org.jetbrains.kotlin.ir.types.classFqName import org.jetbrains.kotlin.ir.util.fqNameWhenAvailable import org.jetbrains.kotlin.resolve.multiplatform.ExpectActualAnnotationsIncompatibilityType -import org.jetbrains.kotlin.resolve.multiplatform.ExpectActualCompatibility +import org.jetbrains.kotlin.resolve.multiplatform.ExpectActualCheckingCompatibility +import org.jetbrains.kotlin.resolve.multiplatform.ExpectActualMatchingCompatibility object CommonBackendErrors { val NO_ACTUAL_FOR_EXPECT by error2() - val INCOMPATIBLE_MATCHING by error3>() + val EXPECT_ACTUAL_MISMATCH by error3() + val EXPECT_ACTUAL_INCOMPATIBILITY by error3>() val ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT by warning3>() val EVALUATION_ERROR by error1() val ACTUAL_ANNOTATION_CONFLICTING_DEFAULT_ARGUMENT_VALUE by error1() @@ -48,10 +51,17 @@ object KtDefaultCommonBackendErrorMessages : BaseDiagnosticRendererFactory() { MODULE_WITH_PLATFORM, ) map.put( - CommonBackendErrors.INCOMPATIBLE_MATCHING, + CommonBackendErrors.EXPECT_ACTUAL_MISMATCH, "Expect declaration `{0}` doesn''t match actual `{1}` because {2}", STRING, STRING, + MISMATCH + ) + map.put( + CommonBackendErrors.EXPECT_ACTUAL_INCOMPATIBILITY, + "Expect declaration `{0}` is incompatible with actual `{1}` because {2}", + STRING, + STRING, INCOMPATIBILITY ) map.put( @@ -76,7 +86,10 @@ object KtDefaultCommonBackendErrorMessages : BaseDiagnosticRendererFactory() { } object BackendDiagnosticRenderers { - val INCOMPATIBILITY = Renderer> { + val MISMATCH = Renderer { + it.reason ?: "" + } + val INCOMPATIBILITY = Renderer> { it.reason ?: "" } val SYMBOL_OWNER_DECLARATION_FQ_NAME = Renderer { diff --git a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/actualizer/ExpectActualCollector.kt b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/actualizer/ExpectActualCollector.kt index e48ae6571e1..78cf39cbbd7 100644 --- a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/actualizer/ExpectActualCollector.kt +++ b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/actualizer/ExpectActualCollector.kt @@ -279,7 +279,7 @@ private class ExpectActualLinkCollector : IrElementVisitor + incompatibility: ExpectActualCheckingCompatibility.Incompatible<*>, ) { val expectDeclaration = expectSymbol.owner as IrDeclaration val actualDeclaration = actualSymbol.owner as IrDeclaration at(expectDeclaration).report( - CommonBackendErrors.INCOMPATIBLE_MATCHING, + CommonBackendErrors.EXPECT_ACTUAL_INCOMPATIBILITY, + expectDeclaration.getNameWithAssert().asString(), + actualDeclaration.getNameWithAssert().asString(), + incompatibility + ) +} + +internal fun KtDiagnosticReporterWithImplicitIrBasedContext.reportExpectActualMismatch( + expectSymbol: IrSymbol, + actualSymbol: IrSymbol, + incompatibility: ExpectActualMatchingCompatibility.Mismatch, +) { + val expectDeclaration = expectSymbol.owner as IrDeclaration + val actualDeclaration = actualSymbol.owner as IrDeclaration + at(expectDeclaration).report( + CommonBackendErrors.EXPECT_ACTUAL_MISMATCH, expectDeclaration.getNameWithAssert().asString(), actualDeclaration.getNameWithAssert().asString(), incompatibility diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeFunctionTypeParameterNamesInOverride.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeFunctionTypeParameterNamesInOverride.fir.kt index 8a32afe85a0..9f01c201355 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeFunctionTypeParameterNamesInOverride.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeFunctionTypeParameterNamesInOverride.fir.kt @@ -5,7 +5,7 @@ open class Base { open fun foo(t: T) {} } -expect open class Foo : Base +expect open class Foo : Base // MODULE: m2-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeLateinitInOverride.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeLateinitInOverride.fir.kt index 0e23bfee81b..7453bd4f69e 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeLateinitInOverride.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeLateinitInOverride.fir.kt @@ -7,7 +7,7 @@ open class Base { open lateinit var green: String } -expect open class Foo : Base { +expect open class Foo : Base { } // MODULE: m2-jvm()()(m1-common) diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityFromAbstractToFinalInOverride.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityFromAbstractToFinalInOverride.fir.kt index 59cee6f3e66..1224bfa64d6 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityFromAbstractToFinalInOverride.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityFromAbstractToFinalInOverride.fir.kt @@ -5,7 +5,7 @@ interface Base { fun foo() } -expect open class Foo : Base +expect open class Foo : Base // MODULE: m2-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityFromAbstractToOpenInOverride.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityFromAbstractToOpenInOverride.fir.kt index 893dc806111..378a3e3a5b2 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityFromAbstractToOpenInOverride.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityFromAbstractToOpenInOverride.fir.kt @@ -3,7 +3,7 @@ interface Base { fun foo() } -expect open class Foo() : Base +expect open class Foo() : Base // MODULE: m2-jvm()()(m1-common) diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityFromOpenToAbstractInOverride.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityFromOpenToAbstractInOverride.fir.kt index cd739fde311..59275dc00c5 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityFromOpenToAbstractInOverride.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityFromOpenToAbstractInOverride.fir.kt @@ -3,7 +3,7 @@ interface Base { fun foo() {} } -expect abstract class Foo() : Base +expect abstract class Foo() : Base // MODULE: m2-jvm()()(m1-common) diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityFromOpenToFinalInOverride.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityFromOpenToFinalInOverride.fir.kt index bc613cb7253..5fcc8f7e000 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityFromOpenToFinalInOverride.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityFromOpenToFinalInOverride.fir.kt @@ -5,7 +5,7 @@ open class Base { open fun foo() {} } -expect open class Foo : Base +expect open class Foo : Base // MODULE: m2-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityOfSubstitutedFakeOverride.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityOfSubstitutedFakeOverride.fir.kt index 987a4303334..afe583b5f93 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityOfSubstitutedFakeOverride.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityOfSubstitutedFakeOverride.fir.kt @@ -5,7 +5,7 @@ open class Base { open fun foo(t: T) {} } -expect open class Foo : Base +expect open class Foo : Base // MODULE: m2-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityOfToStringInOverride.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityOfToStringInOverride.fir.kt index 28fafa4b3f4..64aacecc60f 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityOfToStringInOverride.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeModalityOfToStringInOverride.fir.kt @@ -1,7 +1,7 @@ // MODULE: m1-common // FILE: common.kt -expect open class Foo +expect open class Foo // MODULE: m2-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeParameterNameInOverride.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeParameterNameInOverride.fir.kt index e262d989d5e..d0e00538386 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeParameterNameInOverride.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeParameterNameInOverride.fir.kt @@ -5,7 +5,7 @@ open class Base { open fun foo(param: Int) {} } -expect open class Foo1 : Base +expect open class Foo1 : Base expect open class Foo2 : Base expect open class Foo3 { open fun foo(param: Int) diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeSetterVisibilityInOverride.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeSetterVisibilityInOverride.fir.kt index 549587e1611..964d3653e30 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeSetterVisibilityInOverride.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeSetterVisibilityInOverride.fir.kt @@ -6,7 +6,7 @@ open class Base { protected set } -expect open class Foo : Base +expect open class Foo : Base // MODULE: m2-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeVarargModifierInOverride.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeVarargModifierInOverride.fir.kt index affa9448549..800468af7a7 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeVarargModifierInOverride.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeVarargModifierInOverride.fir.kt @@ -5,7 +5,7 @@ open class Base { open fun foo(vararg bar: Int) {} } -expect open class Foo : Base { +expect open class Foo : Base { } // MODULE: m2-jvm()()(m1-common) diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeVisibilityInOverride.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeVisibilityInOverride.fir.kt index fc6c00a1e20..eb4bdb07bff 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeVisibilityInOverride.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/changeVisibilityInOverride.fir.kt @@ -5,7 +5,7 @@ open class Base { protected open fun foo() {} } -expect open class Foo : Base +expect open class Foo : Base // MODULE: m2-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/covariantFunctionOverride.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/covariantFunctionOverride.fir.kt index e602591a7e9..1004c75aaf4 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/covariantFunctionOverride.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/covariantFunctionOverride.fir.kt @@ -6,7 +6,7 @@ open class Base { open fun foo(): Any = "" } -expect open class Foo : Base { +expect open class Foo : Base { } // MODULE: m2-jvm()()(m1-common) diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/covariantOverrideGenericUpperBound.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/covariantOverrideGenericUpperBound.fir.kt index e9c1b4b30a8..df9db6e8949 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/covariantOverrideGenericUpperBound.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/covariantOverrideGenericUpperBound.fir.kt @@ -7,7 +7,7 @@ open class Base { open fun foo(): I = null!! } -expect open class Foo : Base { +expect open class Foo : Base { } // MODULE: m2-jvm()()(m1-common) diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/covariantOverrideGenerics.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/covariantOverrideGenerics.fir.kt index c1dc03731df..9259c7d1a6c 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/covariantOverrideGenerics.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/covariantOverrideGenerics.fir.kt @@ -5,7 +5,7 @@ open class Base { open fun foo(): R = null!! } -expect open class Foo : Base { +expect open class Foo : Base { } // MODULE: m2-jvm()()(m1-common) diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/covariantPropertyOverride.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/covariantPropertyOverride.fir.kt index a5cd37855b1..1c5a1354042 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/covariantPropertyOverride.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/covariantPropertyOverride.fir.kt @@ -6,7 +6,7 @@ open class Base { open fun foo(): String = "" } -expect open class Foo : Base +expect open class Foo : Base // MODULE: m2-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/flexibleTypesMatching.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/flexibleTypesMatching.fir.kt index 93f26533907..261b9aadbaf 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/flexibleTypesMatching.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/flexibleTypesMatching.fir.kt @@ -5,7 +5,7 @@ expect open class Base { open fun foo(): MutableList } -expect open class Foo : Base { +expect open class Foo : Base { } diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/propertyKindOverride.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/propertyKindOverride.fir.kt index 807244cef47..acab3021d6d 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/propertyKindOverride.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/propertyKindOverride.fir.kt @@ -5,7 +5,7 @@ open class Base { open val foo: Int = 1 } -expect open class Foo : Base +expect open class Foo : Base // MODULE: m2-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/severalMismatches.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/severalMismatches.fir.kt index acc03e6ead7..42f73030563 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/severalMismatches.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/actualClassifierMustHasTheSameMembersAsNonFinalExpectClassifierChecker/severalMismatches.fir.kt @@ -8,7 +8,7 @@ open class Base() { protected open fun overrideVisibility(): Any = "" } -expect open class Foo : Base { +expect open class Foo : Base { fun existingMethod() val existingParam: Int } diff --git a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/actualInnerClassMissingMember.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/actualInnerClassMissingMember.fir.kt index de637d03ea4..66d03881844 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/actualInnerClassMissingMember.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/actualInnerClassMissingMember.fir.kt @@ -2,8 +2,8 @@ // FILE: common.kt annotation class Ann -expect class A { - class B { +expect class A { + class B { @Ann fun foo() fun missingOnActual() diff --git a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/arrayVsVararg.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/arrayVsVararg.fir.kt index c167d61b453..45cfd950feb 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/arrayVsVararg.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/arrayVsVararg.fir.kt @@ -1,7 +1,7 @@ // MODULE: m1-common // FILE: common.kt -expect annotation class A; ; some value parameter is vararg in one declaration and non-vararg in the other")!>(vararg val x: String) +expect annotation class A(vararg val x: String) @A("abc", "foo", "bar") fun test() {} diff --git a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/classScopeViaTypealiasIncompatible.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/classScopeViaTypealiasIncompatible.fir.kt index 8c5427a4c54..0e2b21d8da9 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/classScopeViaTypealiasIncompatible.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/classScopeViaTypealiasIncompatible.fir.kt @@ -2,13 +2,13 @@ // FILE: common.kt annotation class Ann -expect class WeakIncompatibility { - @Ann +expect class WeakIncompatibility { + @Ann fun foo(p: String) } -expect class StrongIncompatibility { - @Ann +expect class StrongIncompatibility { + @Ann fun foo(p: Int) } diff --git a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/enumEntries.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/enumEntries.fir.kt index 8fad9868947..d7fb6c9d32e 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/enumEntries.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/enumEntries.fir.kt @@ -2,7 +2,7 @@ // FILE: common.kt annotation class Ann -expect enum class E { +expect enum class E { @Ann FOO, MISSING_ON_ACTUAL diff --git a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeAliasWithArray.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeAliasWithArray.fir.kt index e01b0456fbb..497a656f41c 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeAliasWithArray.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeAliasWithArray.fir.kt @@ -3,7 +3,7 @@ // MODULE: m1-common // FILE: common.kt -expect enum class Mode { +expect enum class Mode { Throughput, AverageTime } diff --git a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeParameters.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeParameters.fir.kt index 966300aef1f..19ca74cabb2 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeParameters.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeParameters.fir.kt @@ -13,7 +13,7 @@ expect class ViaTypealias<@Ann A> expect class TypealiasParamNotAccepted<@Ann A> -expect fun <@Ann A, @Ann B> withIncompatibility() +expect fun <@Ann A, @Ann B> withIncompatibility() // MODULE: m1-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeUsage.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeUsage.fir.kt index 8dfcc6f3e9d..a0c748ce2ca 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeUsage.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeUsage.fir.kt @@ -19,9 +19,9 @@ interface I2 expect fun severalBounds() where T : I1, T : @Ann I2 -expect fun severalBoundsDifferentOrder() where T : I2, T : @Ann I1 +expect fun severalBoundsDifferentOrder() where T : I2, T : @Ann I1 -expect fun lessTypeParamBoundsOnActual() where T : I1, T : @Ann I2 +expect fun lessTypeParamBoundsOnActual() where T : I1, T : @Ann I2 expect fun @Ann Any.onReceiver() @@ -51,7 +51,7 @@ expect fun qualifierPartsMatching(arg: WithNested.Nested<@Ann String>) expect fun qualifierPartsNonMatching(arg: WithNested.Nested<@Ann String>) -expect fun funTypeVsUserType(arg: () -> @Ann String) +expect fun funTypeVsUserType(arg: () -> @Ann String) expect fun funcTypeReturnType(arg: () -> @Ann Any) diff --git a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeUsageWithUnresolvedReference.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeUsageWithUnresolvedReference.fir.kt index 19206683a65..99ec2d04be2 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeUsageWithUnresolvedReference.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/typeUsageWithUnresolvedReference.fir.kt @@ -3,7 +3,7 @@ @Target(AnnotationTarget.TYPE) annotation class Ann -expect fun foo() +expect fun foo() // MODULE: m1-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/valueParameters.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/valueParameters.fir.kt index 4746b2a2413..d7c5cc481eb 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/valueParameters.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/valueParameters.fir.kt @@ -7,7 +7,7 @@ expect fun inMethod(@Ann arg: String) expect class InConstructor(@Ann arg: String) -expect fun withIncopatibility(@Ann p1: String, @Ann p2: String) +expect fun withIncopatibility(@Ann p1: String, @Ann p2: String) // MODULE: m1-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/withOtherIncomatibilities.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/withOtherIncomatibilities.fir.kt index 2f0030269c9..8848a429978 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/withOtherIncomatibilities.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/annotationMatching/withOtherIncomatibilities.fir.kt @@ -2,10 +2,10 @@ // FILE: common.kt annotation class Ann -@Ann +@Ann expect inline fun hasWeakIncompatibility() -@Ann +@Ann expect fun hasStrongIncompatibility(arg: Int) expect fun hasStrongIncompatibility(arg: Double) diff --git a/compiler/testData/diagnostics/tests/multiplatform/complexMatchings/expectCtorlessFinalToActualObject.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/complexMatchings/expectCtorlessFinalToActualObject.fir.kt index 81ac98bdee8..445277cc495 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/complexMatchings/expectCtorlessFinalToActualObject.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/complexMatchings/expectCtorlessFinalToActualObject.fir.kt @@ -2,27 +2,27 @@ // FILE: common.kt expect class E01 -expect class E02() -expect open class E03 +expect class E02() +expect open class E03 -expect class E04 { +expect class E04 { constructor() } -expect class E05(e: E01) -expect class E06 { +expect class E05(e: E01) +expect class E06 { constructor(e: E02) } -expect interface I01 +expect interface I01 expect class M01 { fun foo() } -expect enum class ENUM01 +expect enum class ENUM01 -expect annotation class ANNO01 +expect annotation class ANNO01 // MODULE: m2-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/complexMatchings/expectCtorlessFinalToActualObjectViaTypealias.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/complexMatchings/expectCtorlessFinalToActualObjectViaTypealias.fir.kt index d06ea9b9197..7d234dd7a51 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/complexMatchings/expectCtorlessFinalToActualObjectViaTypealias.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/complexMatchings/expectCtorlessFinalToActualObjectViaTypealias.fir.kt @@ -2,27 +2,27 @@ // FILE: common.kt expect class E01 -expect class E02() -expect open class E03 +expect class E02() +expect open class E03 -expect class E04 { +expect class E04 { constructor() } -expect class E05(e: E01) -expect class E06 { +expect class E05(e: E01) +expect class E06 { constructor(e: E02) } -expect interface I01 +expect interface I01 expect class M01 { fun foo() } -expect enum class ENUM01 +expect enum class ENUM01 -expect annotation class ANNO01 +expect annotation class ANNO01 // MODULE: m2-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/methodDefaultArgsViaActualFakeOverride/delegation.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/methodDefaultArgsViaActualFakeOverride/delegation.fir.kt index 93dbb4d5eef..b0bb1f98550 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/methodDefaultArgsViaActualFakeOverride/delegation.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/methodDefaultArgsViaActualFakeOverride/delegation.fir.kt @@ -1,7 +1,7 @@ // MODULE: m1-common // FILE: common.kt -expect class Foo { - fun foo(param: Int = 1) +expect class Foo { + fun foo(param: Int = 1) } // MODULE: m2-jvm()()(m1-common) diff --git a/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/methodDefaultArgsViaActualFakeOverride/simpleIncompatible.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/methodDefaultArgsViaActualFakeOverride/simpleIncompatible.fir.kt index 2a7174b7978..ee329c2bf1d 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/methodDefaultArgsViaActualFakeOverride/simpleIncompatible.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/methodDefaultArgsViaActualFakeOverride/simpleIncompatible.fir.kt @@ -1,6 +1,6 @@ // MODULE: m1-common // FILE: common.kt -expect class Foo { +expect class Foo { fun foo(param: Int = 1) fun missingOnActual() } diff --git a/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/methodDefaultArgsViaActualTypealias.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/methodDefaultArgsViaActualTypealias.fir.kt index a1d13252c63..ee7e7cb8f2d 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/methodDefaultArgsViaActualTypealias.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/methodDefaultArgsViaActualTypealias.fir.kt @@ -17,7 +17,7 @@ expect class WithDefaultArgFromSuper : I { override fun methodWithDefaultArg(s: String) } -expect open class WithIncompatibility { +expect open class WithIncompatibility { fun foo(p: String = "common") } diff --git a/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/nestedAnnotationClassViaActualTypealias.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/nestedAnnotationClassViaActualTypealias.fir.kt index c2b21f6e015..7643467e5de 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/nestedAnnotationClassViaActualTypealias.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/nestedAnnotationClassViaActualTypealias.fir.kt @@ -1,7 +1,7 @@ // MODULE: m1-common // FILE: common.kt -expect class DefaultArgsInNestedClass { - annotation class Nested(val p: String = "") +expect class DefaultArgsInNestedClass { + annotation class Nested(val p: String = "") } // MODULE: m2-jvm()()(m1-common) diff --git a/compiler/testData/diagnostics/tests/multiplatform/expectInterfaceApplicability.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/expectInterfaceApplicability.fir.kt index e23d7371a4a..ddbb5306b87 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/expectInterfaceApplicability.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/expectInterfaceApplicability.fir.kt @@ -1,13 +1,13 @@ // MODULE: m1-common // FILE: common.kt // TODO: .fir.kt version is just a stub. -expect interface My { +expect interface My { open fun openFunPositive() - open fun openFunNegative() + open fun openFunNegative() abstract fun abstractFun() open val openValPositive: Int - open val openValNegative: Int + open val openValNegative: Int abstract val abstractVal: Int } diff --git a/compiler/testData/diagnostics/tests/multiplatform/generic/typeParameterBoundsDifferentOrderActualMissing.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/generic/typeParameterBoundsDifferentOrderActualMissing.fir.kt index 3be85a7a66f..0fd78e30919 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/generic/typeParameterBoundsDifferentOrderActualMissing.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/generic/typeParameterBoundsDifferentOrderActualMissing.fir.kt @@ -4,7 +4,7 @@ interface A interface B -expect fun List.foo() where T : A, T : B +expect fun List.foo() where T : A, T : B // MODULE: m2-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/headerClass/actualClassWithDefaultValuesInAnnotationViaTypealias.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/headerClass/actualClassWithDefaultValuesInAnnotationViaTypealias.fir.kt index 79722e91845..6fcdfffd316 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/headerClass/actualClassWithDefaultValuesInAnnotationViaTypealias.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/headerClass/actualClassWithDefaultValuesInAnnotationViaTypealias.fir.kt @@ -7,7 +7,7 @@ expect annotation class Foo3 expect annotation class Foo4 expect annotation class Foo5() expect annotation class Foo6() -expect annotation class Foo7() +expect annotation class Foo7() @Foo1 fun foo() {} diff --git a/compiler/testData/diagnostics/tests/multiplatform/headerClass/actualClassWithDifferentConstructors.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/headerClass/actualClassWithDifferentConstructors.fir.kt index 3e0480365f3..e7e31564b6a 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/headerClass/actualClassWithDifferentConstructors.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/headerClass/actualClassWithDifferentConstructors.fir.kt @@ -5,9 +5,9 @@ expect class Foo1 expect class Foo2 expect class Foo3 -expect class Bar1() -expect class Bar2() -expect class Bar3() +expect class Bar1() +expect class Bar2() +expect class Bar3() expect class Bar4() expect class Bar5() expect class Bar6() diff --git a/compiler/testData/diagnostics/tests/multiplatform/headerClass/equalsOverrideInActualInterface.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/headerClass/equalsOverrideInActualInterface.fir.kt index e5b326ce179..2a725f1ac29 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/headerClass/equalsOverrideInActualInterface.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/headerClass/equalsOverrideInActualInterface.fir.kt @@ -1,5 +1,5 @@ // MODULE: m1-common -expect interface Base +expect interface Base // MODULE: m1-jvm()()(m1-common) actual interface Base { diff --git a/compiler/testData/diagnostics/tests/multiplatform/headerClass/expectDeclarationWithStrongIncompatibilities.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/headerClass/expectDeclarationWithStrongIncompatibilities.fir.kt index 1a91402aeeb..33e4e77f005 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/headerClass/expectDeclarationWithStrongIncompatibilities.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/headerClass/expectDeclarationWithStrongIncompatibilities.fir.kt @@ -3,12 +3,12 @@ // FILE: common.kt expect fun foo1(x: Int) -expect fun foo2(x: Int) +expect fun foo2(x: Int) expect class NoArgConstructor() -expect fun foo3(): Int -expect fun foo4(): Int +expect fun foo3(): Int +expect fun foo4(): Int // MODULE: m2-jvm()()(m1-common) diff --git a/compiler/testData/diagnostics/tests/multiplatform/headerClass/expectFunInterface.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/headerClass/expectFunInterface.fir.kt index 9275513342c..1982e2dcdc2 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/headerClass/expectFunInterface.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/headerClass/expectFunInterface.fir.kt @@ -5,7 +5,7 @@ expect fun interface F1 { fun run() } -expect fun interface F2 { +expect fun interface F2 { fun run() } @@ -21,7 +21,7 @@ expect fun interface F5 { fun run() } -expect fun interface F6 { +expect fun interface F6 { fun run() } diff --git a/compiler/testData/diagnostics/tests/multiplatform/headerClass/genericClassImplTypeAlias.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/headerClass/genericClassImplTypeAlias.fir.kt index 3549d34fdac..0bb134ba6ea 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/headerClass/genericClassImplTypeAlias.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/headerClass/genericClassImplTypeAlias.fir.kt @@ -3,8 +3,8 @@ // FILE: common.kt expect class C1 -expect interface C2 -expect interface C3 +expect interface C2 +expect interface C3 expect interface C4 expect interface C5 expect interface C6 diff --git a/compiler/testData/diagnostics/tests/multiplatform/headerClass/morePermissiveVisibilityOnActual.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/headerClass/morePermissiveVisibilityOnActual.fir.kt index 3da9629a534..a8576266986 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/headerClass/morePermissiveVisibilityOnActual.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/headerClass/morePermissiveVisibilityOnActual.fir.kt @@ -2,19 +2,19 @@ // MODULE: m1-common // FILE: common.kt -expect open class Container { +expect open class Container { fun publicFun() internal fun internalFun1() internal fun internalFun2() - internal fun internalFun3() + internal fun internalFun3() protected fun protectedFun1() protected fun protectedFun2() - protected fun protectedFun3() + protected fun protectedFun3() - open internal fun openInternalFun() - open fun openPublicFun() + open internal fun openInternalFun() + open fun openPublicFun() } // MODULE: m2-jvm()()(m1-common) diff --git a/compiler/testData/diagnostics/tests/multiplatform/headerClass/morePermissiveVisibilityOnActualViaTypeAlias_openMember.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/headerClass/morePermissiveVisibilityOnActualViaTypeAlias_openMember.fir.kt index 80b62587d7a..eb3e248b151 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/headerClass/morePermissiveVisibilityOnActualViaTypeAlias_openMember.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/headerClass/morePermissiveVisibilityOnActualViaTypeAlias_openMember.fir.kt @@ -2,8 +2,8 @@ // MODULE: m1-common // FILE: common.kt -expect open class Container { - internal open fun internalFun() +expect open class Container { + internal open fun internalFun() } // MODULE: m2-jvm()()(m1-common) diff --git a/compiler/testData/diagnostics/tests/multiplatform/headerClass/nestedClassesWithErrors.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/headerClass/nestedClassesWithErrors.fir.kt index 9c44aaae50a..5990a0538bf 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/headerClass/nestedClassesWithErrors.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/headerClass/nestedClassesWithErrors.fir.kt @@ -14,7 +14,7 @@ expect class C { expect inner class I } -expect class D { +expect class D { class N } diff --git a/compiler/testData/diagnostics/tests/multiplatform/headerClass/noImplKeywordOnMember.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/headerClass/noImplKeywordOnMember.fir.kt index f25d953ab1d..538fbf91710 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/headerClass/noImplKeywordOnMember.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/headerClass/noImplKeywordOnMember.fir.kt @@ -1,9 +1,9 @@ // MODULE: m1-common // FILE: common.kt -expect class Foo { +expect class Foo { fun bar(): String - fun bas(f: Int) + fun bas(f: Int) } // MODULE: m2-jvm()()(m1-common) diff --git a/compiler/testData/diagnostics/tests/multiplatform/hmpp/kt57320.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/hmpp/kt57320.fir.kt index fa6959310e5..d6589436b7c 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/hmpp/kt57320.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/hmpp/kt57320.fir.kt @@ -26,7 +26,7 @@ interface KotlinXStringDemoInterface { val value: String } -expect fun StringDemoInterface.plusK(): String +expect fun StringDemoInterface.plusK(): String // MODULE: js()()(common, intermediate) // TARGET_PLATFORM: JS @@ -34,7 +34,7 @@ interface KotlinXStringDemoInterface { // FILE: StringDemoInterface.kt actual typealias StringDemoInterface = KotlinXStringDemoInterface -actual fun StringDemoInterface.; The following declaration is incompatible: expect fun StringDemoInterface.plusK(): String")!>plusK() = StringValue(value).plus("K").value +actual fun StringDemoInterface.; The following declaration is incompatible: expect fun StringDemoInterface.plusK(): String")!>plusK() = StringValue(value).plus("K").value // FILE: main.kt class StringDemo(override val value: String) : StringDemoInterface diff --git a/compiler/testData/diagnostics/tests/multiplatform/implicitActualFakeOverride_AbstractMap.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/implicitActualFakeOverride_AbstractMap.fir.kt index 558c2395cc5..7c1b21fe30a 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/implicitActualFakeOverride_AbstractMap.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/implicitActualFakeOverride_AbstractMap.fir.kt @@ -3,7 +3,7 @@ // FILE: common.kt // K2: false positve INCOMPATIBLE_MATCHING: KT-60155 -public expect abstract class AbstractMutableMap : MutableMap { +public expect abstract class AbstractMutableMap : MutableMap { override val values: MutableCollection } diff --git a/compiler/testData/diagnostics/tests/multiplatform/java/implicitJavaActualization_multipleActuals.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/java/implicitJavaActualization_multipleActuals.fir.kt index 89e6240030d..ac55ed4f888 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/java/implicitJavaActualization_multipleActuals.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/java/implicitJavaActualization_multipleActuals.fir.kt @@ -1,7 +1,7 @@ // MODULE: m1-common // FILE: common.kt -expect class Foo(i: Int) { +expect class Foo(i: Int) { fun foo() } diff --git a/compiler/testData/diagnostics/tests/multiplatform/kt54827.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/kt54827.fir.kt index 08f7d34ee43..a641c0f4208 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/kt54827.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/kt54827.fir.kt @@ -1,6 +1,6 @@ // MODULE: m1-common // FILE: common.kt -expect class SomeClass { +expect class SomeClass { fun foo() } diff --git a/compiler/testData/diagnostics/tests/multiplatform/returnTypeVsGenericsUpperBoundIncompatibility.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/returnTypeVsGenericsUpperBoundIncompatibility.fir.kt index 862ee341e36..a9e38c6b9e6 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/returnTypeVsGenericsUpperBoundIncompatibility.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/returnTypeVsGenericsUpperBoundIncompatibility.fir.kt @@ -2,7 +2,7 @@ // FILE: common.kt interface A -expect fun foo(t: T): String +expect fun foo(t: T): String // MODULE: m2-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/topLevelFun/inlineFun.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/topLevelFun/inlineFun.fir.kt index 75344e5b7f5..ac6c3467554 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/topLevelFun/inlineFun.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/topLevelFun/inlineFun.fir.kt @@ -1,7 +1,7 @@ // MODULE: m1-common // FILE: common.kt -inline expect fun inlineFun() +inline expect fun inlineFun() expect fun nonInlineFun() // MODULE: m2-jvm()()(m1-common) diff --git a/compiler/testData/diagnostics/tests/multiplatform/topLevelFun/valueParameterModifiers.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/topLevelFun/valueParameterModifiers.fir.kt index b56d1eae10c..19583505d75 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/topLevelFun/valueParameterModifiers.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/topLevelFun/valueParameterModifiers.fir.kt @@ -3,15 +3,15 @@ // FILE: common.kt expect fun f1(s: () -> String) -expect inline fun f2(s: () -> String) +expect inline fun f2(s: () -> String) expect inline fun f3(noinline s: () -> String) expect fun f4(s: () -> String) -expect inline fun f5(s: () -> String) +expect inline fun f5(s: () -> String) expect inline fun f6(crossinline s: () -> String) -expect fun f7(x: Any) -expect fun f8(vararg x: Any) +expect fun f7(x: Any) +expect fun f8(vararg x: Any) // MODULE: m2-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/typealias/actualTypealiasToNothing.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/typealias/actualTypealiasToNothing.fir.kt index df78054c05b..bbee0f63844 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/typealias/actualTypealiasToNothing.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/typealias/actualTypealiasToNothing.fir.kt @@ -1,8 +1,8 @@ // MODULE: m1-common // FILE: common.kt -expect class E01 -expect class E02 +expect class E01 +expect class E02 // MODULE: m1-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/typealias/actualTypealiasToNothing_oldLanguageVersion.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/typealias/actualTypealiasToNothing_oldLanguageVersion.fir.kt index bb5e2fe28f7..80fdf22e99d 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/typealias/actualTypealiasToNothing_oldLanguageVersion.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/typealias/actualTypealiasToNothing_oldLanguageVersion.fir.kt @@ -2,8 +2,8 @@ // MODULE: m1-common // FILE: common.kt -expect class E01 -expect class E02 +expect class E01 +expect class E02 // MODULE: m1-jvm()()(m1-common) // FILE: jvm.kt diff --git a/compiler/testData/diagnostics/tests/multiplatform/varSetterVisibility.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/varSetterVisibility.fir.kt index 4215d9fbf9d..f766656ce76 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/varSetterVisibility.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/varSetterVisibility.fir.kt @@ -1,19 +1,19 @@ // MODULE: m1-common // FILE: common.kt -expect var v1: Boolean +expect var v1: Boolean expect var v2: Boolean internal set -expect var v3: Boolean +expect var v3: Boolean internal set -expect open class C { - var foo: Boolean +expect open class C { + var foo: Boolean } -expect open class C2 { - var foo: Boolean +expect open class C2 { + var foo: Boolean } // MODULE: m1-jvm()()(m1-common) diff --git a/compiler/testData/multiplatform/weakIncompatibilityWithoutActualModifier/output.txt b/compiler/testData/multiplatform/weakIncompatibilityWithoutActualModifier/output.txt index fa5e7f1bde8..f3324b8b770 100644 --- a/compiler/testData/multiplatform/weakIncompatibilityWithoutActualModifier/output.txt +++ b/compiler/testData/multiplatform/weakIncompatibilityWithoutActualModifier/output.txt @@ -5,6 +5,6 @@ Output: -- JVM -- Exit code: COMPILATION_ERROR Output: -compiler/testData/multiplatform/weakIncompatibilityWithoutActualModifier/common.kt:1:1: error: expect declaration `Foo` doesn't match actual `Foo` because class kinds are different (class, interface, object, enum, annotation) +compiler/testData/multiplatform/weakIncompatibilityWithoutActualModifier/common.kt:1:1: error: expect declaration `Foo` is incompatible with actual `Foo` because class kinds are different (class, interface, object, enum, annotation) expect class Foo ^