-- Common --
Exit code: OK
Output:

-- JVM --
Exit code: COMPILATION_ERROR
Output:
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:1:12: error: the 'expect' and the 'actual' declarations are incompatible.
  expect: public final expect fun f1(): Unit
  actual: public final actual fun f1(): String
  reason: the return types are different
actual fun f1(): String = ""
           ^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:3:12: error: the 'expect' and the 'actual' declarations are incompatible.
  expect: public final expect fun f2(name: String): Unit
  actual: public final actual fun f2(otherName: String): Unit
  reason: the parameter names are different
actual fun f2(otherName: String) {}
           ^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:5:12: error: 'public final actual fun f3(name: Double): Unit' has no corresponding expected declaration
The following declaration is incompatible because parameter types are different:
    expect fun f3(name: String): Unit

actual fun f3(name: Double) {}
           ^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:6:19: error: 'public final actual fun Double.f3ext(): Unit' has no corresponding expected declaration
The following declaration is incompatible because parameter types are different:
    expect fun String.f3ext(): Unit

actual fun Double.f3ext() {}
                  ^^^^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:8:19: error: 'public final actual fun String.f4(): Unit' has no corresponding expected declaration
The following declaration is incompatible because parameter shapes are different (extension vs non-extension):
    expect fun f4(name: String): Unit

actual fun String.f4() {}
                  ^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:10:12: error: 'public final actual fun f5(name: String): Unit' has no corresponding expected declaration
The following declaration is incompatible because parameter shapes are different (extension vs non-extension):
    expect fun String.f5(): Unit

actual fun f5(name: String) {}
           ^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:12:12: error: 'public final actual fun f6(p2: Int): Unit' has no corresponding expected declaration
The following declaration is incompatible because the number of value parameters is different:
    expect fun f6(p1: String, p2: Int): Unit

actual fun f6(p2: Int) {}
           ^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:14:19: error: 'public final actual fun <K, V> f7(): Unit' has no corresponding expected declaration
The following declaration is incompatible because the number of type parameters is different:
    expect fun <T> f7(): Unit

actual fun <K, V> f7() {}
                  ^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:17:21: error: the 'expect' and the 'actual' declarations are incompatible.
  expect: public final expect fun f10(): Unit
  actual: internal final actual fun f10(): Unit
  reason: the visibilities are different
internal actual fun f10() {}
                    ^^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:19:29: error: 'public final actual fun <T : Annotation> f11(): Unit' has no corresponding expected declaration
The following declaration is incompatible because the upper bounds of type parameters are different:
    expect fun <T : Number> f11(): Unit

actual fun <T : Annotation> f11() {}
                            ^^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:20:42: error: 'public final actual fun <U : MutableList<out String>> f12(): Unit' has no corresponding expected declaration
The following declaration is incompatible because the upper bounds of type parameters are different:
    expect fun <U : MutableList<String>> f12(): Unit

actual fun <U : MutableList<out String>> f12() {}
                                         ^^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:21:35: error: 'public final actual fun <A, B : Comparable<B>> f13(): Unit' has no corresponding expected declaration
The following declaration is incompatible because the upper bounds of type parameters are different:
    expect fun <A, B : Comparable<A>> f13(): Unit

actual fun <A, B : Comparable<B>> f13() {}
                                  ^^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:23:31: error: the 'expect' and the 'actual' declarations are incompatible.
  expect: public final expect inline fun <X> f14(): Unit
  actual: public final actual inline fun <reified X> f14(): Unit
  reason: some type parameter is reified in one declaration and non-reified in the other
actual inline fun <reified X> f14() {}
                              ^^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:26:16: error: actual function cannot have default argument values. They must be declared in the expected function.
actual fun f16(s: String = "") {}
               ^^^^^^^^^^^^^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:28:12: error: the 'expect' and the 'actual' declarations are incompatible.
  expect: public final expect fun f17(vararg s: String): Unit
  actual: public final actual fun f17(s: Array<out String>): Unit
  reason: some value parameter is vararg in one declaration and non-vararg in the other
actual fun f17(s: Array<out String>) {}
           ^^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:29:12: error: the 'expect' and the 'actual' declarations are incompatible.
  expect: public final expect fun f18(s: Array<out String>): Unit
  actual: public final actual fun f18(vararg s: String): Unit
  reason: some value parameter is vararg in one declaration and non-vararg in the other
actual fun f18(vararg s: String) {}
           ^^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:30:19: error: the 'expect' and the 'actual' declarations are incompatible.
  expect: public final expect inline fun f19(s: () -> Unit): Unit
  actual: public final actual inline fun f19(crossinline s: () -> Unit): Unit
  reason: some value parameter is crossinline in one declaration and not crossinline in the other
actual inline fun f19(crossinline s: () -> Unit) {}
                  ^^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:31:19: error: the 'expect' and the 'actual' declarations are incompatible.
  expect: public final expect inline fun f20(s: () -> Unit): Unit
  actual: public final actual inline fun f20(noinline s: () -> Unit): Unit
  reason: some value parameter is noinline in one declaration and not noinline in the other
actual inline fun f20(noinline s: () -> Unit) {}
                  ^^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:32:12: error: 'public final actual fun f21(c: Unit.() -> Unit): Unit' has no corresponding expected declaration
The following declaration is incompatible because parameter types are different:
    expect fun f21(c: suspend Unit.() -> Unit): Unit

actual fun f21(c: Unit.() -> Unit) {}
           ^^^
compiler/testData/multiplatform/incompatibleCallables/jvm.kt:33:12: error: 'public final actual fun f22(c: suspend Unit.() -> Unit): Unit' has no corresponding expected declaration
The following declaration is incompatible because parameter types are different:
    expect fun f22(c: Unit.() -> Unit): Unit

actual fun f22(c: suspend Unit.() -> Unit) {}
           ^^^
