[Tests] Fix .ll.kt KMP tests data added in previous commit
It is expected, that in some complex cases `ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT` reports in .ll.kt disappeared at all. This is because FIR checker doesn't catch comlex cases, which are handled by IR checker. Also add comments about bugs KT-62886 and KT-63382 found by tests. ^KT-62559
This commit is contained in:
committed by
Space Team
parent
29980c6b85
commit
c20a5fc650
+6
-6
@@ -2,13 +2,13 @@
|
|||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
annotation class Ann
|
annotation class Ann
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class A {
|
expect class A {
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>class B {
|
class B {
|
||||||
@Ann
|
@Ann
|
||||||
fun foo()
|
fun foo()
|
||||||
<!NO_ACTUAL_FOR_EXPECT{JVM}!>fun missingOnActual()<!>
|
fun missingOnActual()
|
||||||
}<!>
|
}
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
@@ -18,4 +18,4 @@ class AImpl {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT, NO_ACTUAL_CLASS_MEMBER_FOR_EXPECTED_CLASS!>A<!> = AImpl<!>
|
actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT, NO_ACTUAL_CLASS_MEMBER_FOR_EXPECTED_CLASS!>A<!> = AImpl
|
||||||
|
|||||||
+3
-3
@@ -14,9 +14,9 @@ expect fun onType(): @Ann2("") Any?
|
|||||||
|
|
||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual annotation class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT("annotation class Ann : Annotation; annotation class Ann : Annotation; Annotation `@Target(allowedTargets = vararg(AnnotationTarget.FUNCTION, AnnotationTarget.CLASS))` is missing on actual declaration")!>Ann<!><!>
|
actual annotation class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT("annotation class Ann : Annotation; annotation class Ann : Annotation; Annotation `@Target(allowedTargets = vararg(AnnotationTarget.FUNCTION, AnnotationTarget.CLASS))` is missing on actual declaration")!>Ann<!>
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT("fun stringConcat(): Unit; fun stringConcat(): Unit; Annotation `@Ann2(s = String(1).plus(String(2)))` is missing on actual declaration")!>stringConcat<!>() {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT("fun stringConcat(): Unit; fun stringConcat(): Unit; Annotation `@Ann2(s = String(1).plus(String(2)))` is missing on actual declaration")!>stringConcat<!>() {}
|
||||||
|
|
||||||
// Not reported in K1, because supported starting from K2
|
// Not reported in K1, because supported starting from K2
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT("fun onType(): @Ann2(...) Any?; fun onType(): Any?; Annotation `@Ann2(s = String())` is missing on actual declaration")!>onType<!>(): Any? = null<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT("fun onType(): @Ann2(...) Any?; fun onType(): Any?; Annotation `@Ann2(s = String())` is missing on actual declaration")!>onType<!>(): Any? = null
|
||||||
|
|||||||
+6
-6
@@ -87,8 +87,8 @@ package test
|
|||||||
@ClassArgAnn(ClassForReference::class)
|
@ClassArgAnn(ClassForReference::class)
|
||||||
actual fun getClassExpression() {}
|
actual fun getClassExpression() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@ClassArgAnn(ClassForReference::class)
|
@ClassArgAnn(ClassForReference::class)
|
||||||
actual fun differentClassesWithSameName() {}<!>
|
actual fun differentClassesWithSameName() {}
|
||||||
|
|
||||||
@StringArgAnn("1.9")
|
@StringArgAnn("1.9")
|
||||||
actual fun stringConstant() {}
|
actual fun stringConstant() {}
|
||||||
@@ -114,8 +114,8 @@ actual fun varargInAnnotationWithArraySpread() {}
|
|||||||
@ArrayArgAnn(arrayOf("foo", "bar"))
|
@ArrayArgAnn(arrayOf("foo", "bar"))
|
||||||
actual fun arrayInAnnotation() {}
|
actual fun arrayInAnnotation() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@ArrayArgAnn(["foo"])
|
@ArrayArgAnn(["foo"])
|
||||||
actual fun arrayInAnnotationNotMatch() {}<!>
|
actual fun arrayInAnnotationNotMatch() {}
|
||||||
|
|
||||||
@NestedAnnArg(
|
@NestedAnnArg(
|
||||||
text = "root",
|
text = "root",
|
||||||
@@ -127,7 +127,7 @@ actual fun arrayInAnnotationNotMatch() {}<!>
|
|||||||
)
|
)
|
||||||
actual fun complexNestedAnnotations() {}
|
actual fun complexNestedAnnotations() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@NestedAnnArg(
|
@NestedAnnArg(
|
||||||
text = "root",
|
text = "root",
|
||||||
NestedAnnArg("1"),
|
NestedAnnArg("1"),
|
||||||
NestedAnnArg("2",
|
NestedAnnArg("2",
|
||||||
@@ -135,4 +135,4 @@ actual fun complexNestedAnnotations() {}
|
|||||||
NestedAnnArg("DIFFERENT")
|
NestedAnnArg("DIFFERENT")
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
actual fun complexNestedAnnotationsNotMatch() {}<!>
|
actual fun complexNestedAnnotationsNotMatch() {}
|
||||||
|
|||||||
+2
-2
@@ -7,5 +7,5 @@ expect fun explicitDefaultArgument()
|
|||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
// No special handling for this case
|
// No special handling for this case
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@Ann
|
@Ann
|
||||||
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>explicitDefaultArgument<!>() {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>explicitDefaultArgument<!>() {}
|
||||||
|
|||||||
+2
-2
@@ -23,8 +23,8 @@ actual annotation class ExpectIsSubsetOfActual
|
|||||||
@Target(AnnotationTarget.CONSTRUCTOR, AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.CLASS)
|
@Target(AnnotationTarget.CONSTRUCTOR, AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.CLASS)
|
||||||
actual annotation class ExpectIsSubsetOfActualDifferentOrder
|
actual annotation class ExpectIsSubsetOfActualDifferentOrder
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@Target(AnnotationTarget.FUNCTION)
|
@Target(AnnotationTarget.FUNCTION)
|
||||||
actual annotation class MoreTargetsOnExpect<!>
|
actual annotation class MoreTargetsOnExpect
|
||||||
|
|
||||||
@Target(AnnotationTarget.FUNCTION, AnnotationTarget.CLASS, AnnotationTarget.TYPEALIAS)
|
@Target(AnnotationTarget.FUNCTION, AnnotationTarget.CLASS, AnnotationTarget.TYPEALIAS)
|
||||||
actual annotation class RepeatedTargetsInExpect
|
actual annotation class RepeatedTargetsInExpect
|
||||||
|
|||||||
+14
-14
@@ -62,26 +62,26 @@ expect fun explicitVsInfered()
|
|||||||
@Ann<A>
|
@Ann<A>
|
||||||
actual fun sameTypeParam() {}
|
actual fun sameTypeParam() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@Ann<A>
|
@Ann<A>
|
||||||
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>differentTypeParam<!>() {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>differentTypeParam<!>() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@Ann<A>
|
@Ann<A>
|
||||||
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>differentWithSameName<!>() {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>differentWithSameName<!>() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@Ann<A>
|
@Ann<A>
|
||||||
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>nonNullvsNull<!>() {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>nonNullvsNull<!>() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@Ann<Ann<out A>>
|
@Ann<Ann<out A>>
|
||||||
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>differentVariance<!>() {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>differentVariance<!>() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@Ann<Ann<A>>
|
@Ann<Ann<A>>
|
||||||
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>varianceVsNoVariance<!>() {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>varianceVsNoVariance<!>() {}
|
||||||
|
|
||||||
@Ann<Ann<in A>>
|
@Ann<Ann<in A>>
|
||||||
actual fun sameVariance() {}
|
actual fun sameVariance() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@Ann<Ann<Any>>
|
@Ann<Ann<Any>>
|
||||||
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>startProjection<!>() {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>startProjection<!>() {}
|
||||||
|
|
||||||
@ComplexNested<A>(
|
@ComplexNested<A>(
|
||||||
ComplexNested<A>(),
|
ComplexNested<A>(),
|
||||||
@@ -89,11 +89,11 @@ actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>startProjection<!>() {}<!>
|
|||||||
)
|
)
|
||||||
actual fun complexSame() {}
|
actual fun complexSame() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@ComplexNested<A>(
|
@ComplexNested<A>(
|
||||||
ComplexNested<A>(),
|
ComplexNested<A>(),
|
||||||
ComplexNested<A>(),
|
ComplexNested<A>(),
|
||||||
)
|
)
|
||||||
actual fun complexDiffer() {}<!>
|
actual fun complexDiffer() {}
|
||||||
|
|
||||||
@NestedWithSameTypeArgument<A>(
|
@NestedWithSameTypeArgument<A>(
|
||||||
NestedWithSameTypeArgument<A>()
|
NestedWithSameTypeArgument<A>()
|
||||||
|
|||||||
+2
-2
@@ -25,7 +25,7 @@ expect class AnnotationInside {
|
|||||||
@Ann
|
@Ann
|
||||||
actual class AnnotationMatching
|
actual class AnnotationMatching
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>AnnotationOnExpectOnly<!><!>
|
actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>AnnotationOnExpectOnly<!>
|
||||||
|
|
||||||
@Ann
|
@Ann
|
||||||
actual class AnnotationOnActualOnly
|
actual class AnnotationOnActualOnly
|
||||||
@@ -34,7 +34,7 @@ actual class AnnotationInside {
|
|||||||
@Ann
|
@Ann
|
||||||
actual fun matches() {}
|
actual fun matches() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>onlyOnExpect<!>() {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>onlyOnExpect<!>() {}
|
||||||
|
|
||||||
@Ann
|
@Ann
|
||||||
actual fun onlyOnActual() {}
|
actual fun onlyOnActual() {}
|
||||||
|
|||||||
+10
-10
@@ -44,28 +44,28 @@ expect fun onType(param: @Ann Any)
|
|||||||
|
|
||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>OnClass<!><!>
|
actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>OnClass<!>
|
||||||
|
|
||||||
actual class OnMember {
|
actual class OnMember {
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>onMember<!>() {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>onMember<!>() {}
|
||||||
}
|
}
|
||||||
|
|
||||||
class ViaTypealiasImpl
|
class ViaTypealiasImpl
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>ViaTypealias<!> = ViaTypealiasImpl<!>
|
actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>ViaTypealias<!> = ViaTypealiasImpl
|
||||||
|
|
||||||
class MemberScopeViaTypealiasImpl {
|
class MemberScopeViaTypealiasImpl {
|
||||||
fun foo() {}
|
fun foo() {}
|
||||||
}
|
}
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>MemberScopeViaTypealias<!> = MemberScopeViaTypealiasImpl<!>
|
actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>MemberScopeViaTypealias<!> = MemberScopeViaTypealiasImpl
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@WithArg("other str")
|
@WithArg("other str")
|
||||||
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>withDifferentArg<!>() {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>withDifferentArg<!>() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>inValueParam<!>(arg: String) {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>inValueParam<!>(arg: String) {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <T> <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>inTypeParam<!>() {}<!>
|
actual fun <T> <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>inTypeParam<!>() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT, ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual val <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>onGetter<!>: String = ""<!>
|
actual val <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>onGetter<!>: String = ""
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>onType<!>(param: Any) {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>onType<!>(param: Any) {}
|
||||||
|
|||||||
+1
-1
@@ -16,7 +16,7 @@ expect class A {
|
|||||||
actual class A {
|
actual class A {
|
||||||
actual class B {
|
actual class B {
|
||||||
actual class C {
|
actual class C {
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>foo<!>() {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>foo<!>() {}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+9
-9
@@ -2,15 +2,15 @@
|
|||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
annotation class Ann
|
annotation class Ann
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class WeakIncompatibility {
|
expect class WeakIncompatibility {
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>@Ann
|
@Ann
|
||||||
fun foo(p: String)<!>
|
fun foo(p: String)
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class StrongIncompatibility {
|
expect class StrongIncompatibility {
|
||||||
<!EXPECT_ACTUAL_MISMATCH{JVM}!>@Ann
|
@Ann
|
||||||
fun foo(p: Int)<!>
|
fun foo(p: Int)
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
@@ -19,7 +19,7 @@ class WeakIncompatibilityImpl {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Duplicated diagnostic will be fixed in KT-62559
|
// TODO: Duplicated diagnostic will be fixed in KT-62559
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT, NO_ACTUAL_CLASS_MEMBER_FOR_EXPECTED_CLASS!>WeakIncompatibility<!> = WeakIncompatibilityImpl<!>
|
actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT, NO_ACTUAL_CLASS_MEMBER_FOR_EXPECTED_CLASS!>WeakIncompatibility<!> = WeakIncompatibilityImpl
|
||||||
|
|
||||||
class StrongIncompatibilityImpl {
|
class StrongIncompatibilityImpl {
|
||||||
fun foo(p: String) {} // Different param type
|
fun foo(p: String) {} // Different param type
|
||||||
|
|||||||
+1
-1
@@ -14,5 +14,5 @@ expect class CompatibleOverrides {
|
|||||||
actual class CompatibleOverrides {
|
actual class CompatibleOverrides {
|
||||||
actual fun foo() {}
|
actual fun foo() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>foo<!>(withArg: Any) {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>foo<!>(withArg: Any) {}
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -7,4 +7,4 @@ expect fun foo(p: Array<Int> = arrayOf())
|
|||||||
|
|
||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT("fun foo(p: Array<Int> = ...): Unit; fun foo(p: Array<Int>): Unit; Annotation `@Ann()` is missing on actual declaration")!>foo<!>(p: Array<Int>) {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT("fun foo(p: Array<Int> = ...): Unit; fun foo(p: Array<Int>): Unit; Annotation `@Ann()` is missing on actual declaration")!>foo<!>(p: Array<Int>) {}
|
||||||
|
|||||||
+2
-2
@@ -24,8 +24,8 @@ expect fun differentArgumentsOrder()
|
|||||||
@Ann1
|
@Ann1
|
||||||
actual class AnnotationOrder
|
actual class AnnotationOrder
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@Ann3(2, 1)
|
@Ann3(2, 1)
|
||||||
actual class ValuesOrderInsideAnnotationArgument<!>
|
actual class ValuesOrderInsideAnnotationArgument
|
||||||
|
|
||||||
@Ann4(arg2 = "2", arg1 = "1")
|
@Ann4(arg2 = "2", arg1 = "1")
|
||||||
actual fun differentArgumentsOrder() {}
|
actual fun differentArgumentsOrder() {}
|
||||||
|
|||||||
Vendored
+6
-6
@@ -2,14 +2,14 @@
|
|||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
annotation class Ann
|
annotation class Ann
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect enum class E {
|
expect enum class E {
|
||||||
@Ann
|
@Ann
|
||||||
FOO,
|
FOO,
|
||||||
<!NO_ACTUAL_FOR_EXPECT{JVM}!>MISSING_ON_ACTUAL<!>
|
MISSING_ON_ACTUAL
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual enum class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT, ACTUAL_WITHOUT_EXPECT!>E<!> {
|
actual enum class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT, ACTUAL_WITHOUT_EXPECT!>E<!> {
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>FOO<!>
|
FOO
|
||||||
}<!>
|
}
|
||||||
|
|||||||
+1
-1
@@ -28,4 +28,4 @@ abstract class Intermediate : I {
|
|||||||
override fun noAnnotationOnActual() {}
|
override fun noAnnotationOnActual() {}
|
||||||
}
|
}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>FakeOverrideActual<!> : Intermediate(), I<!>
|
actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>FakeOverrideActual<!> : Intermediate(), I
|
||||||
|
|||||||
+2
-2
@@ -7,5 +7,5 @@ expect fun floatNumbersComparison()
|
|||||||
|
|
||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@Ann(0.1 + 0.1 + 0.1)
|
@Ann(0.1 + 0.1 + 0.1)
|
||||||
actual fun floatNumbersComparison() {}<!>
|
actual fun floatNumbersComparison() {}
|
||||||
|
|||||||
+9
-9
@@ -23,20 +23,20 @@ expect var onSetter: String
|
|||||||
|
|
||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual val <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>onGetter<!>: String
|
actual val <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>onGetter<!>: String
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>get() = ""<!><!>
|
get() = ""
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT, ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual val <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>onGetterImplicit<!>: String = ""<!>
|
actual val <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>onGetterImplicit<!>: String = ""
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual val <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>onGetterWithExplicitTarget<!>: String
|
actual val <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>onGetterWithExplicitTarget<!>: String
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>get() = ""<!><!>
|
get() = ""
|
||||||
|
|
||||||
actual val explicitTargetMatchesWithoutTarget: String
|
actual val explicitTargetMatchesWithoutTarget: String
|
||||||
@Ann get() = ""
|
@Ann get() = ""
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT, ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@Ann
|
@Ann
|
||||||
actual val <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>setOnPropertyWithoutTargetNotMatch<!>: String = ""<!>
|
actual val <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>setOnPropertyWithoutTargetNotMatch<!>: String = ""
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual var <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>onSetter<!>: String
|
actual var <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>onSetter<!>: String
|
||||||
get() = ""
|
get() = ""
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>set(_) {}<!><!>
|
set(_) {}
|
||||||
|
|||||||
+2
-2
@@ -18,5 +18,5 @@ expect fun nonMatching()
|
|||||||
@Ann(MyEnum.FOO.name)
|
@Ann(MyEnum.FOO.name)
|
||||||
actual fun matching() {}
|
actual fun matching() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@Ann(MyEnum.FOO.name)
|
@Ann(MyEnum.FOO.name)
|
||||||
actual fun nonMatching() {}<!>
|
actual fun nonMatching() {}
|
||||||
|
|||||||
+2
-2
@@ -27,9 +27,9 @@ expect fun withSameArgLessOnActual()
|
|||||||
@AnnWithArg(s = "2")
|
@AnnWithArg(s = "2")
|
||||||
actual fun diffentOrder() {}
|
actual fun diffentOrder() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@AnnWithArg(s = "1")
|
@AnnWithArg(s = "1")
|
||||||
@AnnWithArg(s = "3")
|
@AnnWithArg(s = "3")
|
||||||
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>withDifferentArgLessOnActual<!>() {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>withDifferentArgLessOnActual<!>() {}
|
||||||
|
|
||||||
@AnnWithArg(s = "1")
|
@AnnWithArg(s = "1")
|
||||||
@AnnWithArg(s = "2")
|
@AnnWithArg(s = "2")
|
||||||
|
|||||||
+9
-6
@@ -1,3 +1,6 @@
|
|||||||
|
// LL_FIR_DIVERGENCE
|
||||||
|
// UNRESOLVED_REFERENCE on MyOptIn is due to bug KT-61757
|
||||||
|
// LL_FIR_DIVERGENCE
|
||||||
// WITH_STDLIB
|
// WITH_STDLIB
|
||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
@@ -14,10 +17,10 @@ annotation class MyOptIn
|
|||||||
@Deprecated(message = "Some text")
|
@Deprecated(message = "Some text")
|
||||||
@DeprecatedSinceKotlin("1.8")
|
@DeprecatedSinceKotlin("1.8")
|
||||||
@Suppress(<!ERROR_SUPPRESSION!>"INVISIBLE_REFERENCE"<!>, "INVISIBLE_MEMBER")
|
@Suppress(<!ERROR_SUPPRESSION!>"INVISIBLE_REFERENCE"<!>, "INVISIBLE_MEMBER")
|
||||||
@MyOptIn
|
@<!UNRESOLVED_REFERENCE!>MyOptIn<!>
|
||||||
@WasExperimental(MyOptIn::class)
|
@WasExperimental(<!ANNOTATION_ARGUMENT_MUST_BE_CONST!><!UNRESOLVED_REFERENCE!>MyOptIn<!>::class<!>)
|
||||||
@kotlin.internal.RequireKotlin(version = "1.8")
|
@kotlin.internal.RequireKotlin(version = "1.8")
|
||||||
@OptIn(MyOptIn::class)
|
@OptIn(<!ANNOTATION_ARGUMENT_MUST_BE_CONST!><!UNRESOLVED_REFERENCE!>MyOptIn<!>::class<!>)
|
||||||
expect fun skippedAnnotationsOnExpectOnly()
|
expect fun skippedAnnotationsOnExpectOnly()
|
||||||
|
|
||||||
@OptIn(ExperimentalMultiplatform::class)
|
@OptIn(ExperimentalMultiplatform::class)
|
||||||
@@ -29,8 +32,8 @@ expect class ImplicitlyActualizedByJvmDeclarationOnExpectOnly
|
|||||||
package kotlin
|
package kotlin
|
||||||
|
|
||||||
@OptIn(ExperimentalMultiplatform::class)
|
@OptIn(ExperimentalMultiplatform::class)
|
||||||
actual annotation class OptionalExpectationOnExpectOnly
|
actual annotation class <!ACTUAL_WITHOUT_EXPECT, ACTUAL_WITHOUT_EXPECT!>OptionalExpectationOnExpectOnly<!>
|
||||||
|
|
||||||
actual fun skippedAnnotationsOnExpectOnly() {}
|
actual fun <!ACTUAL_WITHOUT_EXPECT!>skippedAnnotationsOnExpectOnly<!>() {}
|
||||||
|
|
||||||
actual class ImplicitlyActualizedByJvmDeclarationOnExpectOnly
|
actual class <!ACTUAL_WITHOUT_EXPECT!>ImplicitlyActualizedByJvmDeclarationOnExpectOnly<!>
|
||||||
|
|||||||
+5
-2
@@ -1,3 +1,6 @@
|
|||||||
|
// LL_FIR_DIVERGENCE
|
||||||
|
// Bug KT-62886
|
||||||
|
// LL_FIR_DIVERGENCE
|
||||||
// WITH_STDLIB
|
// WITH_STDLIB
|
||||||
// DIAGNOSTICS: -ACTUAL_TYPEALIAS_TO_SPECIAL_ANNOTATION
|
// DIAGNOSTICS: -ACTUAL_TYPEALIAS_TO_SPECIAL_ANNOTATION
|
||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
@@ -20,6 +23,6 @@ class SourceAvailableImpl {
|
|||||||
fun foo() {}
|
fun foo() {}
|
||||||
}
|
}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT, ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>SourceAvailable<!> = SourceAvailableImpl<!>
|
actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>SourceAvailable<!> = SourceAvailableImpl
|
||||||
|
|
||||||
actual typealias FromLib = kotlin.SinceKotlin
|
actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>FromLib<!> = kotlin.SinceKotlin
|
||||||
|
|||||||
+1
-1
@@ -19,6 +19,6 @@ abstract class Parent<T> {
|
|||||||
|
|
||||||
abstract class Intermediate : Parent<String>()
|
abstract class Intermediate : Parent<String>()
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>WithAnn<!> : Intermediate()<!>
|
actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>WithAnn<!> : Intermediate()
|
||||||
|
|
||||||
actual class WithoutAnn : Intermediate()
|
actual class WithoutAnn : Intermediate()
|
||||||
|
|||||||
+1
-1
@@ -17,5 +17,5 @@ class Impl {
|
|||||||
fun foo() {}
|
fun foo() {}
|
||||||
}
|
}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>WithAnn<!> = Impl<!>
|
actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>WithAnn<!> = Impl
|
||||||
actual typealias WithoutAnn = Impl
|
actual typealias WithoutAnn = Impl
|
||||||
|
|||||||
+5
-5
@@ -13,15 +13,15 @@ expect class ViaTypealias<@Ann A>
|
|||||||
|
|
||||||
expect class TypealiasParamNotAccepted<@Ann A>
|
expect class TypealiasParamNotAccepted<@Ann A>
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_MISMATCH{JVM}!>expect fun <@Ann A, @Ann B> withIncompatibility()<!>
|
expect fun <@Ann A, @Ann B> withIncompatibility()
|
||||||
|
|
||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <A> <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>inMethod<!>() {}<!>
|
actual fun <A> <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>inMethod<!>() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <@Ann A, B> <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>inMethodTwoParams<!>() {}<!>
|
actual fun <@Ann A, B> <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>inMethodTwoParams<!>() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>InClass<!><A><!>
|
actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>InClass<!><A>
|
||||||
|
|
||||||
class ViaTypealiasImpl<@Ann A>
|
class ViaTypealiasImpl<@Ann A>
|
||||||
|
|
||||||
@@ -29,6 +29,6 @@ actual typealias ViaTypealias<A> = ViaTypealiasImpl<A>
|
|||||||
|
|
||||||
class TypealiasParamNotAcceptedImpl<A>
|
class TypealiasParamNotAcceptedImpl<A>
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>TypealiasParamNotAccepted<!><@Ann A> = TypealiasParamNotAcceptedImpl<A><!>
|
actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>TypealiasParamNotAccepted<!><@Ann A> = TypealiasParamNotAcceptedImpl<A>
|
||||||
|
|
||||||
actual fun <A> <!ACTUAL_WITHOUT_EXPECT!>withIncompatibility<!>() {}
|
actual fun <A> <!ACTUAL_WITHOUT_EXPECT!>withIncompatibility<!>() {}
|
||||||
|
|||||||
Vendored
+20
-20
@@ -19,9 +19,9 @@ interface I2
|
|||||||
|
|
||||||
expect fun <T> severalBounds() where T : I1, T : @Ann I2
|
expect fun <T> severalBounds() where T : I1, T : @Ann I2
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_MISMATCH{JVM}!>expect fun <T> severalBoundsDifferentOrder() where T : I2, T : @Ann I1<!>
|
expect fun <T> severalBoundsDifferentOrder() where T : I2, T : @Ann I1
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_MISMATCH{JVM}!>expect fun <T> lessTypeParamBoundsOnActual() where T : I1, T : @Ann I2<!>
|
expect fun <T> lessTypeParamBoundsOnActual() where T : I1, T : @Ann I2
|
||||||
|
|
||||||
expect fun @Ann Any.onReceiver()
|
expect fun @Ann Any.onReceiver()
|
||||||
|
|
||||||
@@ -51,7 +51,7 @@ expect fun qualifierPartsMatching(arg: WithNested<String>.Nested<@Ann String>)
|
|||||||
|
|
||||||
expect fun qualifierPartsNonMatching(arg: WithNested<String>.Nested<@Ann String>)
|
expect fun qualifierPartsNonMatching(arg: WithNested<String>.Nested<@Ann String>)
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_MISMATCH{JVM}!>expect fun funTypeVsUserType(arg: () -> @Ann String)<!>
|
expect fun funTypeVsUserType(arg: () -> @Ann String)
|
||||||
|
|
||||||
expect fun funcTypeReturnType(arg: () -> @Ann Any)
|
expect fun funcTypeReturnType(arg: () -> @Ann Any)
|
||||||
|
|
||||||
@@ -61,46 +61,46 @@ expect fun funcTypeArgType(arg: (arg: @Ann Any) -> Unit)
|
|||||||
|
|
||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>valueParameterType<!>(arg: String) {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>valueParameterType<!>(arg: String) {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>returnType<!>(): String = ""<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>returnType<!>(): String = ""
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <T : Any> <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>methodTypeParamBound<!>() {}<!>
|
actual fun <T : Any> <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>methodTypeParamBound<!>() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>OnClassTypeParamBound<!><T : Any><!>
|
actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>OnClassTypeParamBound<!><T : Any>
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <T> <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>typeParamBoundInWhere<!>() where T : Any {}<!>
|
actual fun <T> <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>typeParamBoundInWhere<!>() where T : Any {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <T> <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>severalBounds<!>() where T : I1, T : I2 {}<!>
|
actual fun <T> <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>severalBounds<!>() where T : I1, T : I2 {}
|
||||||
|
|
||||||
actual fun <T> <!ACTUAL_WITHOUT_EXPECT!>severalBoundsDifferentOrder<!>() where T : @Ann I1, T : I2 {}
|
actual fun <T> <!ACTUAL_WITHOUT_EXPECT!>severalBoundsDifferentOrder<!>() where T : @Ann I1, T : I2 {}
|
||||||
|
|
||||||
actual fun <T> <!ACTUAL_WITHOUT_EXPECT!>lessTypeParamBoundsOnActual<!>() where T : @Ann I2 {}
|
actual fun <T> <!ACTUAL_WITHOUT_EXPECT!>lessTypeParamBoundsOnActual<!>() where T : @Ann I2 {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun Any.<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>onReceiver<!>() {}<!>
|
actual fun Any.<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>onReceiver<!>() {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>OnClassSuper<!> : I1<!>
|
actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>OnClassSuper<!> : I1
|
||||||
|
|
||||||
actual class OnClassSuperDifferentOrder : @Ann I2, I1
|
actual class OnClassSuperDifferentOrder : @Ann I2, I1
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>OnClassSuperMoreOnActual<!> : I1, I2<!>
|
actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>OnClassSuperMoreOnActual<!> : I1, I2
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>OnClassSuperTypeParams<!><T> : I3<T><!>
|
actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>OnClassSuperTypeParams<!><T> : I3<T>
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>deepInParamsTypes<!>(arg: I3<I3<Any>>) {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>deepInParamsTypes<!>(arg: I3<I3<Any>>) {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>starProjection<!>(arg: I4<*, Any>) {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>starProjection<!>(arg: I4<*, Any>) {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <T> <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>typeArgWithVariance<!>(t: I3<out T>) {}<!>
|
actual fun <T> <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>typeArgWithVariance<!>(t: I3<out T>) {}
|
||||||
|
|
||||||
actual fun qualifierPartsMatching(arg: WithNested<String>.Nested<@Ann String>) {}
|
actual fun qualifierPartsMatching(arg: WithNested<String>.Nested<@Ann String>) {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>qualifierPartsNonMatching<!>(arg: WithNested<@Ann String>.Nested<String>) {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>qualifierPartsNonMatching<!>(arg: WithNested<@Ann String>.Nested<String>) {}
|
||||||
|
|
||||||
actual fun <!ACTUAL_WITHOUT_EXPECT!>funTypeVsUserType<!>(arg: kotlin.jvm.functions.Function0<String>) {}
|
actual fun <!ACTUAL_WITHOUT_EXPECT!>funTypeVsUserType<!>(arg: kotlin.jvm.functions.Function0<String>) {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>funcTypeReturnType<!>(arg: () -> Any) {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>funcTypeReturnType<!>(arg: () -> Any) {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>funcTypeReceiverType<!>(arg: Any.() -> Unit) {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>funcTypeReceiverType<!>(arg: Any.() -> Unit) {}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>funcTypeArgType<!>(arg: (arg: Any) -> Unit) {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>funcTypeArgType<!>(arg: (arg: Any) -> Unit) {}
|
||||||
|
|||||||
+1
-1
@@ -11,4 +11,4 @@ expect class Foo: @Ann I
|
|||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
typealias ITypealias = I
|
typealias ITypealias = I
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>Foo<!> : ITypealias<!>
|
actual class <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>Foo<!> : ITypealias
|
||||||
|
|||||||
+1
-1
@@ -7,4 +7,4 @@ expect fun foo(): @Ann Int
|
|||||||
|
|
||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>foo<!>() = 1<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>foo<!>() = 1
|
||||||
|
|||||||
+1
-1
@@ -3,7 +3,7 @@
|
|||||||
@Target(AnnotationTarget.TYPE)
|
@Target(AnnotationTarget.TYPE)
|
||||||
annotation class Ann
|
annotation class Ann
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_MISMATCH{JVM}!>expect fun <T : @Ann Any> foo()<!>
|
expect fun <T : @Ann Any> foo()
|
||||||
|
|
||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
Vendored
+8
-8
@@ -48,35 +48,35 @@ expect class InnerClassInsideTypealias {
|
|||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
class KtTypealiasNotMatchImpl
|
class KtTypealiasNotMatchImpl
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>KtTypealiasNotMatch<!> = KtTypealiasNotMatchImpl<!>
|
actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>KtTypealiasNotMatch<!> = KtTypealiasNotMatchImpl
|
||||||
|
|
||||||
class AnnotationsNotConsideredOnTypealiasImpl
|
class AnnotationsNotConsideredOnTypealiasImpl
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>@Ann
|
@Ann
|
||||||
actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>AnnotationsNotConsideredOnTypealias<!> = AnnotationsNotConsideredOnTypealiasImpl<!>
|
actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>AnnotationsNotConsideredOnTypealias<!> = AnnotationsNotConsideredOnTypealiasImpl
|
||||||
|
|
||||||
class MethodsInsideTypealiasImpl {
|
class MethodsInsideTypealiasImpl {
|
||||||
fun foo() {}
|
fun foo() {}
|
||||||
}
|
}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>MethodsInsideTypealias<!> = MethodsInsideTypealiasImpl<!>
|
actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>MethodsInsideTypealias<!> = MethodsInsideTypealiasImpl
|
||||||
|
|
||||||
class ValueInsideTypealiasImpl {
|
class ValueInsideTypealiasImpl {
|
||||||
val value: String = ""
|
val value: String = ""
|
||||||
}
|
}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>ValueInsideTypealias<!> = ValueInsideTypealiasImpl<!>
|
actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>ValueInsideTypealias<!> = ValueInsideTypealiasImpl
|
||||||
|
|
||||||
class ConstructorInsideTypealiasImpl
|
class ConstructorInsideTypealiasImpl
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>ConstructorInsideTypealias<!> = ConstructorInsideTypealiasImpl<!>
|
actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>ConstructorInsideTypealias<!> = ConstructorInsideTypealiasImpl
|
||||||
|
|
||||||
class MethodWithComplexAnnInsideTypealiasImpl {
|
class MethodWithComplexAnnInsideTypealiasImpl {
|
||||||
@ComplexAnn("13")
|
@ComplexAnn("13")
|
||||||
fun withComplexAnn() {}
|
fun withComplexAnn() {}
|
||||||
}
|
}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual typealias MethodWithComplexAnnInsideTypealias = MethodWithComplexAnnInsideTypealiasImpl<!>
|
actual typealias MethodWithComplexAnnInsideTypealias = MethodWithComplexAnnInsideTypealiasImpl
|
||||||
|
|
||||||
class InnerClassInsideTypealiasImpl {
|
class InnerClassInsideTypealiasImpl {
|
||||||
class Foo {
|
class Foo {
|
||||||
@@ -84,4 +84,4 @@ class InnerClassInsideTypealiasImpl {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>InnerClassInsideTypealias<!> = InnerClassInsideTypealiasImpl<!>
|
actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>InnerClassInsideTypealias<!> = InnerClassInsideTypealiasImpl
|
||||||
|
|||||||
+1
-1
@@ -9,6 +9,6 @@ expect annotation class MyDeprecatedMatch
|
|||||||
|
|
||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual typealias MyDeprecatedNotMatch = java.lang.Deprecated<!>
|
actual typealias MyDeprecatedNotMatch = java.lang.Deprecated
|
||||||
|
|
||||||
actual typealias MyDeprecatedMatch = java.lang.Deprecated
|
actual typealias MyDeprecatedMatch = java.lang.Deprecated
|
||||||
|
|||||||
+2
-2
@@ -36,8 +36,8 @@ expect abstract class MyAbstractIterator<T> {
|
|||||||
|
|
||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual typealias MyDeprecatedNotMatch = kotlin.Deprecated<!>
|
actual typealias MyDeprecatedNotMatch = kotlin.Deprecated
|
||||||
|
|
||||||
actual typealias MyDeprecatedMatch = kotlin.Deprecated
|
actual typealias MyDeprecatedMatch = kotlin.Deprecated
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>MyAbstractIterator<!><T> = AbstractIterator<T><!>
|
actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>MyAbstractIterator<!><T> = AbstractIterator<T>
|
||||||
|
|||||||
+3
-3
@@ -7,12 +7,12 @@ expect fun inMethod(@Ann arg: String)
|
|||||||
|
|
||||||
expect class InConstructor(@Ann arg: String)
|
expect class InConstructor(@Ann arg: String)
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_MISMATCH{JVM}!>expect fun withIncopatibility(@Ann p1: String, @Ann p2: String)<!>
|
expect fun withIncopatibility(@Ann p1: String, @Ann p2: String)
|
||||||
|
|
||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>inMethod<!>(arg: String) {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>inMethod<!>(arg: String) {}
|
||||||
|
|
||||||
actual class InConstructor <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT, ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual constructor(arg: String)<!> {}
|
actual class InConstructor <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual constructor(arg: String)<!> {}
|
||||||
|
|
||||||
actual fun <!ACTUAL_WITHOUT_EXPECT!>withIncopatibility<!>(p1: String) {}
|
actual fun <!ACTUAL_WITHOUT_EXPECT!>withIncopatibility<!>(p1: String) {}
|
||||||
|
|||||||
+5
-5
@@ -2,17 +2,17 @@
|
|||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
annotation class Ann
|
annotation class Ann
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>@Ann
|
@Ann
|
||||||
expect inline fun hasWeakIncompatibility()<!>
|
expect inline fun hasWeakIncompatibility()
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_MISMATCH{JVM}, EXPECT_ACTUAL_MISMATCH{JVM}!>@Ann
|
@Ann
|
||||||
expect fun hasStrongIncompatibility(arg: Int)<!>
|
expect fun hasStrongIncompatibility(arg: Int)
|
||||||
|
|
||||||
expect fun hasStrongIncompatibility(arg: Double)
|
expect fun hasStrongIncompatibility(arg: Double)
|
||||||
|
|
||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT, ACTUAL_WITHOUT_EXPECT!>hasWeakIncompatibility<!>() {}<!>
|
actual fun <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT, ACTUAL_WITHOUT_EXPECT!>hasWeakIncompatibility<!>() {}
|
||||||
|
|
||||||
actual fun <!ACTUAL_WITHOUT_EXPECT!>hasStrongIncompatibility<!>(arg: Any?) {}
|
actual fun <!ACTUAL_WITHOUT_EXPECT!>hasStrongIncompatibility<!>(arg: Any?) {}
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -5,7 +5,7 @@ open class Base {
|
|||||||
open fun <T> foo(t: T) {}
|
open fun <T> foo(t: T) {}
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Foo : Base<!>
|
expect open class Foo : Base
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+2
-2
@@ -7,8 +7,8 @@ open class Base {
|
|||||||
open lateinit var green: String
|
open lateinit var green: String
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Foo : Base {
|
expect open class Foo : Base {
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+1
-1
@@ -5,7 +5,7 @@ interface Base {
|
|||||||
fun foo()
|
fun foo()
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open <!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class Foo<!> : Base<!>
|
expect open <!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class Foo<!> : Base
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+1
-1
@@ -3,7 +3,7 @@
|
|||||||
interface Base {
|
interface Base {
|
||||||
fun foo()
|
fun foo()
|
||||||
}
|
}
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open <!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class Foo<!>() : Base<!>
|
expect open <!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class Foo<!>() : Base
|
||||||
|
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
|
|||||||
+1
-1
@@ -3,7 +3,7 @@
|
|||||||
interface Base {
|
interface Base {
|
||||||
fun foo() {}
|
fun foo() {}
|
||||||
}
|
}
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect abstract class Foo() : Base<!>
|
expect abstract class Foo() : Base
|
||||||
|
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
|
|||||||
+1
-1
@@ -5,7 +5,7 @@ open class Base {
|
|||||||
open fun foo() {}
|
open fun foo() {}
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Foo : Base<!>
|
expect open class Foo : Base
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+1
-1
@@ -5,7 +5,7 @@ open class Base<T> {
|
|||||||
open fun foo(t: T) {}
|
open fun foo(t: T) {}
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Foo : Base<String><!>
|
expect open class Foo : Base<String>
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+1
-1
@@ -1,7 +1,7 @@
|
|||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Foo<!>
|
expect open class Foo
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+1
-1
@@ -5,7 +5,7 @@ open class Base {
|
|||||||
open fun foo(param: Int) {}
|
open fun foo(param: Int) {}
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Foo1 : Base<!>
|
expect open class Foo1 : Base
|
||||||
expect open class Foo2 : Base
|
expect open class Foo2 : Base
|
||||||
expect open class Foo3 {
|
expect open class Foo3 {
|
||||||
open fun foo(param: Int)
|
open fun foo(param: Int)
|
||||||
|
|||||||
+1
-1
@@ -6,7 +6,7 @@ open class Base {
|
|||||||
protected set
|
protected set
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Foo : Base<!>
|
expect open class Foo : Base
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+2
-2
@@ -5,8 +5,8 @@ open class Base {
|
|||||||
open fun foo(vararg bar: Int) {}
|
open fun foo(vararg bar: Int) {}
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Foo : Base {
|
expect open class Foo : Base {
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+1
-1
@@ -5,7 +5,7 @@ open class Base {
|
|||||||
protected open fun foo() {}
|
protected open fun foo() {}
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Foo : Base<!>
|
expect open class Foo : Base
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+2
-2
@@ -6,8 +6,8 @@ open class Base {
|
|||||||
open fun foo(): Any = ""
|
open fun foo(): Any = ""
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Foo : Base {
|
expect open class Foo : Base {
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+2
-2
@@ -7,8 +7,8 @@ open class Base {
|
|||||||
open fun foo(): I = null!!
|
open fun foo(): I = null!!
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Foo<T : I> : Base {
|
expect open class Foo<T : I> : Base {
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+2
-2
@@ -5,8 +5,8 @@ open class Base<R> {
|
|||||||
open fun foo(): R = null!!
|
open fun foo(): R = null!!
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Foo<R, T : R> : Base<R> {
|
expect open class Foo<R, T : R> : Base<R> {
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+1
-1
@@ -6,7 +6,7 @@ open class Base {
|
|||||||
open fun foo(): String = ""
|
open fun foo(): String = ""
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Foo : Base<!>
|
expect open class Foo : Base
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+2
-2
@@ -5,9 +5,9 @@ expect open class Base {
|
|||||||
open fun foo(): MutableList<String>
|
open fun foo(): MutableList<String>
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Foo : Base {
|
expect open class Foo : Base {
|
||||||
|
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+1
-1
@@ -5,7 +5,7 @@ open class Base {
|
|||||||
open val foo: Int = 1
|
open val foo: Int = 1
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Foo : Base<!>
|
expect open class Foo : Base
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+2
-2
@@ -8,10 +8,10 @@ open class Base() {
|
|||||||
protected open fun overrideVisibility(): Any = ""
|
protected open fun overrideVisibility(): Any = ""
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Foo : Base {
|
expect open class Foo : Base {
|
||||||
fun existingMethod()
|
fun existingMethod()
|
||||||
val existingParam: Int
|
val existingParam: Int
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+1
-1
@@ -1,7 +1,7 @@
|
|||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect annotation class A<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>(vararg val x: String)<!><!>
|
expect annotation class A(vararg val x: String)
|
||||||
|
|
||||||
@A("abc", "foo", "bar")
|
@A("abc", "foo", "bar")
|
||||||
fun test() {}
|
fun test() {}
|
||||||
|
|||||||
+2
-2
@@ -3,9 +3,9 @@
|
|||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, NO_ACTUAL_FOR_EXPECT{JVM}!>expect enum class Mode {
|
expect enum class Mode {
|
||||||
Throughput, AverageTime
|
Throughput, AverageTime
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
expect annotation class BenchmarkMode(vararg val value: Mode)
|
expect annotation class BenchmarkMode(vararg val value: Mode)
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
// ISSUE: KT-58483
|
// ISSUE: KT-58483
|
||||||
// MODULE: jvm
|
// MODULE: jvm
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect class A<!>
|
expect class A
|
||||||
|
|||||||
+10
-10
@@ -2,27 +2,27 @@
|
|||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
|
|
||||||
expect class E01
|
expect class E01
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class E02()<!>
|
expect class E02()
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class E03<!>
|
expect open class E03
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class E04 {
|
expect class E04 {
|
||||||
constructor()
|
constructor()
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class E05(e: E01)<!>
|
expect class E05(e: E01)
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class E06 {
|
expect class E06 {
|
||||||
constructor(e: E02)
|
constructor(e: E02)
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect interface I01<!>
|
expect interface I01
|
||||||
|
|
||||||
expect class M01 {
|
expect class M01 {
|
||||||
fun foo()
|
fun foo()
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect enum class ENUM01<!>
|
expect enum class ENUM01
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect annotation class ANNO01<!>
|
expect annotation class ANNO01
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+10
-10
@@ -2,27 +2,27 @@
|
|||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
|
|
||||||
expect class E01
|
expect class E01
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class E02()<!>
|
expect class E02()
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class E03<!>
|
expect open class E03
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class E04 {
|
expect class E04 {
|
||||||
constructor()
|
constructor()
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class E05(e: E01)<!>
|
expect class E05(e: E01)
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class E06 {
|
expect class E06 {
|
||||||
constructor(e: E02)
|
constructor(e: E02)
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect interface I01<!>
|
expect interface I01
|
||||||
|
|
||||||
expect class M01 {
|
expect class M01 {
|
||||||
fun foo()
|
fun foo()
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect enum class ENUM01<!>
|
expect enum class ENUM01
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect annotation class ANNO01<!>
|
expect annotation class ANNO01
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+1
-1
@@ -30,4 +30,4 @@ actual annotation class A3(actual val x: Int = 42, actual val y: String = "OK")
|
|||||||
|
|
||||||
actual annotation class A4(actual val x: Int, actual val y: String = "OK")
|
actual annotation class A4(actual val x: Int, actual val y: String = "OK")
|
||||||
|
|
||||||
actual annotation class A5(actual val x: Int = <!ACTUAL_ANNOTATION_CONFLICTING_DEFAULT_ARGUMENT_VALUE!>239<!>, actual val y: String = "OK")
|
actual annotation class A5(actual val x: Int = 239, actual val y: String = "OK")
|
||||||
|
|||||||
+1
-1
@@ -25,7 +25,7 @@ actual typealias A1 = J1
|
|||||||
actual typealias A2 = J2
|
actual typealias A2 = J2
|
||||||
actual typealias A3 = J3
|
actual typealias A3 = J3
|
||||||
actual typealias A4 = J4
|
actual typealias A4 = J4
|
||||||
<!ACTUAL_ANNOTATION_CONFLICTING_DEFAULT_ARGUMENT_VALUE!>actual typealias A5 = J5<!>
|
actual typealias A5 = J5
|
||||||
|
|
||||||
// FILE: J1.java
|
// FILE: J1.java
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -12,7 +12,7 @@ expect annotation class NonMatching(val e: E = E.BAR)
|
|||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
actual typealias E = EJava
|
actual typealias E = EJava
|
||||||
actual typealias Matching = AJava
|
actual typealias Matching = AJava
|
||||||
<!ACTUAL_ANNOTATION_CONFLICTING_DEFAULT_ARGUMENT_VALUE!>actual typealias NonMatching = AJava<!>
|
actual typealias NonMatching = AJava
|
||||||
|
|
||||||
// FILE: EJava.java
|
// FILE: EJava.java
|
||||||
public enum EJava {
|
public enum EJava {
|
||||||
|
|||||||
+3
-3
@@ -1,8 +1,8 @@
|
|||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class Foo {
|
expect class Foo {
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>fun foo(param: Int = 1)<!>
|
fun foo(param: Int = 1)
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+3
-3
@@ -1,9 +1,9 @@
|
|||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class Foo {
|
expect class Foo {
|
||||||
fun foo(param: Int = 1)
|
fun foo(param: Int = 1)
|
||||||
<!NO_ACTUAL_FOR_EXPECT{JVM}!>fun missingOnActual()<!>
|
fun missingOnActual()
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+2
-2
@@ -17,9 +17,9 @@ expect class WithDefaultArgFromSuper : I {
|
|||||||
override fun methodWithDefaultArg(s: String)
|
override fun methodWithDefaultArg(s: String)
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class WithIncompatibility {
|
expect open class WithIncompatibility {
|
||||||
fun foo(p: String = "common")
|
fun foo(p: String = "common")
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+3
-3
@@ -1,8 +1,8 @@
|
|||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class DefaultArgsInNestedClass {
|
expect class DefaultArgsInNestedClass {
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>annotation class Nested<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>(val p: String = "")<!><!>
|
annotation class Nested(val p: String = "")
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+4
-4
@@ -1,14 +1,14 @@
|
|||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect enum class En<!EXPECTED_ENUM_CONSTRUCTOR!>(x: Int)<!> {
|
expect enum class En<!EXPECTED_ENUM_CONSTRUCTOR!>(x: Int)<!> {
|
||||||
E1,
|
E1,
|
||||||
E2<!SUPERTYPE_INITIALIZED_IN_EXPECTED_CLASS!>(42)<!>,
|
E2<!SUPERTYPE_INITIALIZED_IN_EXPECTED_CLASS!>(42)<!>,
|
||||||
;
|
;
|
||||||
|
|
||||||
<!EXPECTED_ENUM_CONSTRUCTOR!>constructor(s: String)<!>
|
<!EXPECTED_ENUM_CONSTRUCTOR!>constructor(s: String)<!>
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect enum class En2 {
|
expect enum class En2 {
|
||||||
E1<!SUPERTYPE_INITIALIZED_IN_EXPECTED_CLASS!>()<!>
|
E1<!SUPERTYPE_INITIALIZED_IN_EXPECTED_CLASS!>()<!>
|
||||||
}<!>
|
}
|
||||||
|
|||||||
+2
-2
@@ -1,10 +1,10 @@
|
|||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect enum class En {
|
expect enum class En {
|
||||||
E1,
|
E1,
|
||||||
<!EXPECTED_ENUM_ENTRY_WITH_BODY!>E2 {
|
<!EXPECTED_ENUM_ENTRY_WITH_BODY!>E2 {
|
||||||
<!EXPECTED_DECLARATION_WITH_BODY!>fun foo()<!> = ""
|
<!EXPECTED_DECLARATION_WITH_BODY!>fun foo()<!> = ""
|
||||||
},<!>
|
},<!>
|
||||||
<!EXPECTED_ENUM_ENTRY_WITH_BODY!>E3 { };<!>
|
<!EXPECTED_ENUM_ENTRY_WITH_BODY!>E3 { };<!>
|
||||||
}<!>
|
}
|
||||||
|
|||||||
@@ -1,19 +1,23 @@
|
|||||||
|
// LL_FIR_DIVERGENCE
|
||||||
|
// WRONG_MODIFIER_TARGET not reported in LL and reported in CLI tests in common module,
|
||||||
|
// because it is JVM-only checker, and in CLI common module analyzed additionally against JVM target.
|
||||||
|
// LL_FIR_DIVERGENCE
|
||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
|
|
||||||
expect <!EXPECTED_EXTERNAL_DECLARATION!>external<!> fun foo()
|
expect <!EXPECTED_EXTERNAL_DECLARATION!>external<!> fun foo()
|
||||||
expect fun bar()
|
expect fun bar()
|
||||||
|
|
||||||
expect <!EXPECTED_EXTERNAL_DECLARATION, WRONG_MODIFIER_TARGET!>external<!> var prop: String
|
expect <!EXPECTED_EXTERNAL_DECLARATION!>external<!> var prop: String
|
||||||
|
|
||||||
expect var getAndSet: String
|
expect var getAndSet: String
|
||||||
<!EXPECTED_EXTERNAL_DECLARATION!>external<!> get
|
<!EXPECTED_EXTERNAL_DECLARATION!>external<!> get
|
||||||
<!EXPECTED_EXTERNAL_DECLARATION!>external<!> set
|
<!EXPECTED_EXTERNAL_DECLARATION!>external<!> set
|
||||||
|
|
||||||
<!EXPECTED_EXTERNAL_DECLARATION, WRONG_MODIFIER_TARGET!>external<!> expect val explicitGetter: String
|
<!EXPECTED_EXTERNAL_DECLARATION!>external<!> expect val explicitGetter: String
|
||||||
<!EXPECTED_EXTERNAL_DECLARATION!>external<!> get
|
<!EXPECTED_EXTERNAL_DECLARATION!>external<!> get
|
||||||
|
|
||||||
expect <!EXPECTED_EXTERNAL_DECLARATION, WRONG_MODIFIER_TARGET!>external<!> class A {
|
expect <!EXPECTED_EXTERNAL_DECLARATION!>external<!> class A {
|
||||||
<!EXPECTED_EXTERNAL_DECLARATION!>external<!> fun foo()
|
<!EXPECTED_EXTERNAL_DECLARATION!>external<!> fun foo()
|
||||||
fun bar()
|
fun bar()
|
||||||
}
|
}
|
||||||
|
|||||||
+4
-4
@@ -1,15 +1,15 @@
|
|||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
// TODO: .fir.kt version is just a stub.
|
// TODO: .fir.kt version is just a stub.
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect interface My {
|
expect interface My {
|
||||||
open fun openFunPositive()
|
open fun openFunPositive()
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>open fun openFunNegative()<!>
|
open fun openFunNegative()
|
||||||
abstract fun abstractFun()
|
abstract fun abstractFun()
|
||||||
|
|
||||||
open val openValPositive: Int
|
open val openValPositive: Int
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>open val openValNegative: Int<!>
|
open val openValNegative: Int
|
||||||
abstract val abstractVal: Int
|
abstract val abstractVal: Int
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+1
-1
@@ -4,7 +4,7 @@
|
|||||||
interface A
|
interface A
|
||||||
interface B
|
interface B
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_MISMATCH{JVM}!>expect fun <T> List<T>.foo() where T : A, T : B<!>
|
expect fun <T> List<T>.foo() where T : A, T : B
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+1
-1
@@ -7,7 +7,7 @@ expect annotation class Foo3
|
|||||||
expect annotation class Foo4
|
expect annotation class Foo4
|
||||||
expect annotation class Foo5()
|
expect annotation class Foo5()
|
||||||
expect annotation class Foo6()
|
expect annotation class Foo6()
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect annotation class Foo7<!EXPECT_ACTUAL_MISMATCH{JVM}!>()<!><!>
|
expect annotation class Foo7()
|
||||||
|
|
||||||
@<!UNRESOLVED_REFERENCE!>Foo1<!>
|
@<!UNRESOLVED_REFERENCE!>Foo1<!>
|
||||||
fun foo() {}
|
fun foo() {}
|
||||||
|
|||||||
+3
-3
@@ -5,9 +5,9 @@ expect class Foo1
|
|||||||
expect class Foo2
|
expect class Foo2
|
||||||
expect class Foo3
|
expect class Foo3
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class Bar1<!EXPECT_ACTUAL_MISMATCH{JVM}!>()<!><!>
|
expect class Bar1()
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class Bar2<!EXPECT_ACTUAL_MISMATCH{JVM}!>()<!><!>
|
expect class Bar2()
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class Bar3<!EXPECT_ACTUAL_MISMATCH{JVM}!>()<!><!>
|
expect class Bar3()
|
||||||
expect class Bar4()
|
expect class Bar4()
|
||||||
expect class Bar5()
|
expect class Bar5()
|
||||||
expect class Bar6()
|
expect class Bar6()
|
||||||
|
|||||||
Vendored
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect interface Base<!>
|
expect interface Base
|
||||||
|
|
||||||
// MODULE: m1-jvm()()(m1-common)
|
// MODULE: m1-jvm()()(m1-common)
|
||||||
actual interface Base {
|
actual interface Base {
|
||||||
|
|||||||
+4
-4
@@ -5,18 +5,18 @@ interface Foo {
|
|||||||
fun foo()
|
fun foo()
|
||||||
}
|
}
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect class NonAbstractClass : Foo {
|
expect class NonAbstractClass : Foo {
|
||||||
<!ABSTRACT_FUNCTION_IN_NON_ABSTRACT_CLASS!>abstract<!> fun bar()
|
<!ABSTRACT_FUNCTION_IN_NON_ABSTRACT_CLASS!>abstract<!> fun bar()
|
||||||
|
|
||||||
<!ABSTRACT_PROPERTY_IN_NON_ABSTRACT_CLASS!>abstract<!> val baz: Int
|
<!ABSTRACT_PROPERTY_IN_NON_ABSTRACT_CLASS!>abstract<!> val baz: Int
|
||||||
|
|
||||||
<!ABSTRACT_FUNCTION_IN_NON_ABSTRACT_CLASS!>abstract<!> override fun foo()
|
<!ABSTRACT_FUNCTION_IN_NON_ABSTRACT_CLASS!>abstract<!> override fun foo()
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect abstract class AbstractClass : Foo {
|
expect abstract class AbstractClass : Foo {
|
||||||
abstract fun bar()
|
abstract fun bar()
|
||||||
|
|
||||||
abstract val baz: Int
|
abstract val baz: Int
|
||||||
|
|
||||||
abstract override fun foo()
|
abstract override fun foo()
|
||||||
}<!>
|
}
|
||||||
|
|||||||
+3
-3
@@ -3,12 +3,12 @@
|
|||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
|
|
||||||
expect fun foo1(x: Int)
|
expect fun foo1(x: Int)
|
||||||
<!EXPECT_ACTUAL_MISMATCH{JVM}, EXPECT_ACTUAL_MISMATCH{JVM}!>expect fun foo2(x: Int)<!>
|
expect fun foo2(x: Int)
|
||||||
|
|
||||||
expect class NoArgConstructor()
|
expect class NoArgConstructor()
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect fun foo3(): Int<!>
|
expect fun foo3(): Int
|
||||||
<!EXPECT_ACTUAL_MISMATCH{JVM}!>expect fun foo4(): Int<!>
|
expect fun foo4(): Int
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
|
|
||||||
|
|||||||
+4
-4
@@ -2,14 +2,14 @@
|
|||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class Foo1<!>
|
expect class Foo1
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class Foo2<!>
|
expect class Foo2
|
||||||
|
|
||||||
expect fun foo2(): Int
|
expect fun foo2(): Int
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect val s: String<!>
|
expect val s: String
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Foo3<!>
|
expect open class Foo3
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
|
|
||||||
|
|||||||
+4
-4
@@ -5,9 +5,9 @@ expect fun interface F1 {
|
|||||||
fun run()
|
fun run()
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect fun interface F2 {
|
expect fun interface F2 {
|
||||||
fun run()
|
fun run()
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
expect fun interface F3 {
|
expect fun interface F3 {
|
||||||
fun run()
|
fun run()
|
||||||
@@ -21,9 +21,9 @@ expect fun interface F5 {
|
|||||||
fun run()
|
fun run()
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect fun interface F6 {
|
expect fun interface F6 {
|
||||||
fun run()
|
fun run()
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
expect fun interface F7 {
|
expect fun interface F7 {
|
||||||
fun run()
|
fun run()
|
||||||
|
|||||||
Vendored
+4
-4
@@ -1,13 +1,13 @@
|
|||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect open class A {
|
expect open class A {
|
||||||
constructor(s: String)
|
constructor(s: String)
|
||||||
|
|
||||||
constructor(n: Number) : <!EXPECTED_CLASS_CONSTRUCTOR_DELEGATION_CALL!>this<!>("A")
|
constructor(n: Number) : <!EXPECTED_CLASS_CONSTRUCTOR_DELEGATION_CALL!>this<!>("A")
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect class B : A {
|
expect class B : A {
|
||||||
constructor(i: Int)
|
constructor(i: Int)
|
||||||
|
|
||||||
constructor() : <!EXPECTED_CLASS_CONSTRUCTOR_DELEGATION_CALL!>super<!>("B")
|
constructor() : <!EXPECTED_CLASS_CONSTRUCTOR_DELEGATION_CALL!>super<!>("B")
|
||||||
}<!>
|
}
|
||||||
|
|||||||
+20
-20
@@ -1,10 +1,10 @@
|
|||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect abstract class BaseA() {
|
expect abstract class BaseA() {
|
||||||
abstract fun foo()
|
abstract fun foo()
|
||||||
}<!>
|
}
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect open <!ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED!>class BaseAImpl<!>() : BaseA<!>
|
expect open <!ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED!>class BaseAImpl<!>() : BaseA
|
||||||
|
|
||||||
<!ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED!>class DerivedA1<!> : BaseAImpl()
|
<!ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED!>class DerivedA1<!> : BaseAImpl()
|
||||||
class DerivedA2 : BaseAImpl() {
|
class DerivedA2 : BaseAImpl() {
|
||||||
@@ -13,10 +13,10 @@ class DerivedA2 : BaseAImpl() {
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect interface BaseB {
|
expect interface BaseB {
|
||||||
fun foo()
|
fun foo()
|
||||||
}<!>
|
}
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect open <!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class BaseBImpl<!>() : BaseB<!>
|
expect open <!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class BaseBImpl<!>() : BaseB
|
||||||
|
|
||||||
<!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class DerivedB1<!> : BaseBImpl()
|
<!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class DerivedB1<!> : BaseBImpl()
|
||||||
class DerivedB2 : BaseBImpl() {
|
class DerivedB2 : BaseBImpl() {
|
||||||
@@ -25,10 +25,10 @@ class DerivedB2 : BaseBImpl() {
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect interface BaseC {
|
expect interface BaseC {
|
||||||
fun foo()
|
fun foo()
|
||||||
}<!>
|
}
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect abstract class BaseCImpl() : BaseC<!>
|
expect abstract class BaseCImpl() : BaseC
|
||||||
|
|
||||||
<!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class DerivedC1<!> : BaseCImpl()
|
<!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class DerivedC1<!> : BaseCImpl()
|
||||||
class DerivedC2 : BaseCImpl() {
|
class DerivedC2 : BaseCImpl() {
|
||||||
@@ -37,35 +37,35 @@ class DerivedC2 : BaseCImpl() {
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect interface BaseD {
|
expect interface BaseD {
|
||||||
fun foo()
|
fun foo()
|
||||||
}<!>
|
}
|
||||||
abstract class BaseDImpl() : BaseD {
|
abstract class BaseDImpl() : BaseD {
|
||||||
fun bar() = super.<!ABSTRACT_SUPER_CALL!>foo<!>()
|
fun bar() = super.<!ABSTRACT_SUPER_CALL!>foo<!>()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect interface BaseE {
|
expect interface BaseE {
|
||||||
fun foo()
|
fun foo()
|
||||||
}<!>
|
}
|
||||||
sealed class BaseEImpl() : BaseE {
|
sealed class BaseEImpl() : BaseE {
|
||||||
fun bar() = super.<!ABSTRACT_SUPER_CALL!>foo<!>()
|
fun bar() = super.<!ABSTRACT_SUPER_CALL!>foo<!>()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect interface BaseF {
|
expect interface BaseF {
|
||||||
fun foo()
|
fun foo()
|
||||||
}<!>
|
}
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect <!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class BaseFImpl<!>() : BaseF<!>
|
expect <!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>class BaseFImpl<!>() : BaseF
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect abstract class BaseG() {
|
expect abstract class BaseG() {
|
||||||
abstract fun foo()
|
abstract fun foo()
|
||||||
}<!>
|
}
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect open class BaseGImpl() : BaseG {
|
expect open class BaseGImpl() : BaseG {
|
||||||
override fun foo()
|
override fun foo()
|
||||||
}<!>
|
}
|
||||||
class DerivedG1 : BaseGImpl()
|
class DerivedG1 : BaseGImpl()
|
||||||
|
|||||||
Vendored
+2
-2
@@ -3,8 +3,8 @@
|
|||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
|
|
||||||
expect class C1
|
expect class C1
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect interface C2<A><!>
|
expect interface C2<A>
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect interface C3<B><!>
|
expect interface C3<B>
|
||||||
expect interface C4<D, E>
|
expect interface C4<D, E>
|
||||||
expect interface C5<F, G>
|
expect interface C5<F, G>
|
||||||
expect interface C6<H>
|
expect interface C6<H>
|
||||||
|
|||||||
Vendored
-1
@@ -1,4 +1,3 @@
|
|||||||
// IGNORE_REVERSED_RESOLVE
|
|
||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect class Foo {
|
<!NO_ACTUAL_FOR_EXPECT!>expect class Foo {
|
||||||
|
|||||||
Vendored
-1
@@ -1,4 +1,3 @@
|
|||||||
// IGNORE_REVERSED_RESOLVE
|
|
||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
expect class Foo {
|
expect class Foo {
|
||||||
|
|||||||
Vendored
+2
-3
@@ -1,7 +1,6 @@
|
|||||||
// IGNORE_REVERSED_RESOLVE
|
|
||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect class Foo {
|
expect class Foo {
|
||||||
<!EXPECTED_DECLARATION_WITH_BODY!>init<!> {
|
<!EXPECTED_DECLARATION_WITH_BODY!>init<!> {
|
||||||
"no"
|
"no"
|
||||||
}
|
}
|
||||||
@@ -21,4 +20,4 @@
|
|||||||
<!EXPECTED_DECLARATION_WITH_BODY!>fun functionWithBody(x: Int): Int<!> {
|
<!EXPECTED_DECLARATION_WITH_BODY!>fun functionWithBody(x: Int): Int<!> {
|
||||||
return x + 1
|
return x + 1
|
||||||
}
|
}
|
||||||
}<!>
|
}
|
||||||
|
|||||||
+2
-2
@@ -4,6 +4,6 @@
|
|||||||
interface A
|
interface A
|
||||||
|
|
||||||
class B : A
|
class B : A
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect class Foo(b: B) : A by b<!>
|
expect class Foo(b: B) : A by b
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect class Bar : A by B()<!>
|
expect class Bar : A by B()
|
||||||
|
|||||||
+2
-2
@@ -1,7 +1,7 @@
|
|||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect class Foo {
|
expect class Foo {
|
||||||
val justVal: String
|
val justVal: String
|
||||||
var justVar: String
|
var justVar: String
|
||||||
|
|
||||||
@@ -25,6 +25,6 @@
|
|||||||
<!EXPECTED_LATEINIT_PROPERTY!>lateinit<!> var lateinitVar: String
|
<!EXPECTED_LATEINIT_PROPERTY!>lateinit<!> var lateinitVar: String
|
||||||
|
|
||||||
val delegated: String by <!EXPECTED_DELEGATED_PROPERTY!>Delegate<!>
|
val delegated: String by <!EXPECTED_DELEGATED_PROPERTY!>Delegate<!>
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
object Delegate { operator fun getValue(x: Any?, y: Any?): String = "" }
|
object Delegate { operator fun getValue(x: Any?, y: Any?): String = "" }
|
||||||
|
|||||||
compiler/testData/diagnostics/tests/multiplatform/headerClass/morePermissiveVisibilityOnActual.ll.kt
Vendored
+6
-6
@@ -2,20 +2,20 @@
|
|||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Container {
|
expect open class Container {
|
||||||
fun publicFun()
|
fun publicFun()
|
||||||
|
|
||||||
internal fun internalFun1()
|
internal fun internalFun1()
|
||||||
internal fun internalFun2()
|
internal fun internalFun2()
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>internal fun internalFun3()<!>
|
internal fun internalFun3()
|
||||||
|
|
||||||
protected fun protectedFun1()
|
protected fun protectedFun1()
|
||||||
protected fun protectedFun2()
|
protected fun protectedFun2()
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>protected fun protectedFun3()<!>
|
protected fun protectedFun3()
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>open internal fun openInternalFun()<!>
|
open internal fun openInternalFun()
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>open fun openPublicFun()<!>
|
open fun openPublicFun()
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
|
|
||||||
|
|||||||
+3
-3
@@ -2,9 +2,9 @@
|
|||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect open class Container {
|
expect open class Container {
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>internal open fun internalFun()<!>
|
internal open fun internalFun()
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
|
|
||||||
|
|||||||
Vendored
+3
-3
@@ -14,9 +14,9 @@ expect class C {
|
|||||||
<!WRONG_MODIFIER_TARGET!>expect<!> inner class I
|
<!WRONG_MODIFIER_TARGET!>expect<!> inner class I
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class D {
|
expect class D {
|
||||||
<!NO_ACTUAL_FOR_EXPECT{JVM}!>class N<!>
|
class N
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
expect class E {
|
expect class E {
|
||||||
class N
|
class N
|
||||||
|
|||||||
+3
-3
@@ -1,10 +1,10 @@
|
|||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>expect class Foo {
|
expect class Foo {
|
||||||
fun bar(): String
|
fun bar(): String
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>fun bas(f: Int)<!>
|
fun bas(f: Int)
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+2
-2
@@ -1,9 +1,9 @@
|
|||||||
// MODULE: m1-common
|
// MODULE: m1-common
|
||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!>expect class Foo { // also, it's important that Foo doesn't override equals
|
expect class Foo { // also, it's important that Foo doesn't override equals
|
||||||
fun foo()
|
fun foo()
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
fun check(x1: Foo, x: Any) {
|
fun check(x1: Foo, x: Any) {
|
||||||
if (x1 == x) {
|
if (x1 == x) {
|
||||||
|
|||||||
+2
-2
@@ -7,9 +7,9 @@ interface J
|
|||||||
|
|
||||||
expect class Foo : I, C, J
|
expect class Foo : I, C, J
|
||||||
|
|
||||||
<!SUPERTYPE_INITIALIZED_WITHOUT_PRIMARY_CONSTRUCTOR!>expect class Bar : C<!SUPERTYPE_INITIALIZED_IN_EXPECTED_CLASS!>()<!><!>
|
<!SUPERTYPE_INITIALIZED_WITHOUT_PRIMARY_CONSTRUCTOR, SUPERTYPE_INITIALIZED_WITHOUT_PRIMARY_CONSTRUCTOR!>expect class Bar : C<!SUPERTYPE_INITIALIZED_IN_EXPECTED_CLASS, SUPERTYPE_INITIALIZED_IN_EXPECTED_CLASS!>()<!><!>
|
||||||
|
|
||||||
expect class WithExplicitPrimaryConstructor() : C<!SUPERTYPE_INITIALIZED_IN_EXPECTED_CLASS!>()<!>
|
expect class WithExplicitPrimaryConstructor() : C<!SUPERTYPE_INITIALIZED_IN_EXPECTED_CLASS, SUPERTYPE_INITIALIZED_IN_EXPECTED_CLASS!>()<!>
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
+5
-2
@@ -1,3 +1,6 @@
|
|||||||
|
// LL_FIR_DIVERGENCE
|
||||||
|
// False positive reports of ARGUMENT_TYPE_MISMATCH and UNRESOLVED_REFERENCE are due to bug KT-63382.
|
||||||
|
// LL_FIR_DIVERGENCE
|
||||||
// ISSUE: KT-57369
|
// ISSUE: KT-57369
|
||||||
|
|
||||||
// MODULE: common
|
// MODULE: common
|
||||||
@@ -25,6 +28,6 @@ fun cancelFutureOnCompletionAlt(handlerBase: CompletionHandlerBase) {
|
|||||||
// MODULE: main()()(common, intermediate)
|
// MODULE: main()()(common, intermediate)
|
||||||
// the order of dependencies is important to reproduce KT-57369
|
// the order of dependencies is important to reproduce KT-57369
|
||||||
fun cancelFutureOnCompletion(handlerBase: CompletionHandlerBase) {
|
fun cancelFutureOnCompletion(handlerBase: CompletionHandlerBase) {
|
||||||
invokeOnCompletion(handlerBase)
|
invokeOnCompletion(<!ARGUMENT_TYPE_MISMATCH!>handlerBase<!>)
|
||||||
handlerBase.foo()
|
handlerBase.<!UNRESOLVED_REFERENCE!>foo<!>()
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,9 +4,9 @@
|
|||||||
// TARGET_PLATFORM: Common
|
// TARGET_PLATFORM: Common
|
||||||
|
|
||||||
// FILE: StringValue.kt
|
// FILE: StringValue.kt
|
||||||
<!NO_ACTUAL_FOR_EXPECT{JS}!>expect class StringValue<!>
|
expect class StringValue
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT{JS}!>expect fun StringValue.plus(other: String): StringValue<!>
|
expect fun StringValue.plus(other: String): StringValue
|
||||||
|
|
||||||
// MODULE: commonJS()()(common)
|
// MODULE: commonJS()()(common)
|
||||||
// TARGET_PLATFORM: JS
|
// TARGET_PLATFORM: JS
|
||||||
@@ -26,7 +26,7 @@ interface KotlinXStringDemoInterface {
|
|||||||
val value: String
|
val value: String
|
||||||
}
|
}
|
||||||
|
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JS}!>expect fun StringDemoInterface.plusK(): String<!>
|
expect fun StringDemoInterface.plusK(): String
|
||||||
|
|
||||||
// MODULE: js()()(common, intermediate)
|
// MODULE: js()()(common, intermediate)
|
||||||
// TARGET_PLATFORM: JS
|
// TARGET_PLATFORM: JS
|
||||||
|
|||||||
+4
-1
@@ -1,3 +1,6 @@
|
|||||||
|
// LL_FIR_DIVERGENCE
|
||||||
|
// Bug KT-62886
|
||||||
|
// LL_FIR_DIVERGENCE
|
||||||
// FIR_IDENTICAL
|
// FIR_IDENTICAL
|
||||||
// WITH_STDLIB
|
// WITH_STDLIB
|
||||||
// MODULE: common
|
// MODULE: common
|
||||||
@@ -12,4 +15,4 @@ expect annotation class CommonVolatile
|
|||||||
@Retention(AnnotationRetention.SOURCE)
|
@Retention(AnnotationRetention.SOURCE)
|
||||||
actual annotation class Ann
|
actual annotation class Ann
|
||||||
|
|
||||||
actual typealias CommonVolatile = kotlin.jvm.Volatile
|
actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>CommonVolatile<!> = kotlin.jvm.Volatile
|
||||||
|
|||||||
+1
-1
@@ -11,7 +11,7 @@ expect class Foo
|
|||||||
// FILE: Foo.kt
|
// FILE: Foo.kt
|
||||||
actual annotation class Ann actual constructor(actual val p: Int)
|
actual annotation class Ann actual constructor(actual val p: Int)
|
||||||
|
|
||||||
<!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>Foo<!> = FooImpl<!>
|
actual typealias <!ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT!>Foo<!> = FooImpl
|
||||||
|
|
||||||
// FILE: FooImpl.java
|
// FILE: FooImpl.java
|
||||||
@Ann(p = 2)
|
@Ann(p = 2)
|
||||||
|
|||||||
-1
@@ -1,4 +1,3 @@
|
|||||||
// IGNORE_REVERSED_RESOLVE
|
|
||||||
// MODULE: common
|
// MODULE: common
|
||||||
// TARGET_PLATFORM: Common
|
// TARGET_PLATFORM: Common
|
||||||
|
|
||||||
|
|||||||
-1
@@ -1,4 +1,3 @@
|
|||||||
// IGNORE_REVERSED_RESOLVE
|
|
||||||
// MODULE: common
|
// MODULE: common
|
||||||
// TARGET_PLATFORM: Common
|
// TARGET_PLATFORM: Common
|
||||||
|
|
||||||
|
|||||||
+4
-5
@@ -1,13 +1,12 @@
|
|||||||
// IGNORE_REVERSED_RESOLVE
|
|
||||||
// MODULE: common
|
// MODULE: common
|
||||||
// TARGET_PLATFORM: Common
|
// TARGET_PLATFORM: Common
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT{JVM}!>expect class CommonClass {
|
expect class CommonClass {
|
||||||
fun memberFun()
|
fun memberFun()
|
||||||
val memberProp: Int
|
val memberProp: Int
|
||||||
class Nested
|
class Nested
|
||||||
inner class Inner
|
inner class Inner
|
||||||
}<!>
|
}
|
||||||
actual class <!ACTUAL_WITHOUT_EXPECT!>CommonClass<!> {
|
actual class <!ACTUAL_WITHOUT_EXPECT!>CommonClass<!> {
|
||||||
actual fun <!ACTUAL_WITHOUT_EXPECT!>memberFun<!>() {}
|
actual fun <!ACTUAL_WITHOUT_EXPECT!>memberFun<!>() {}
|
||||||
actual val <!ACTUAL_WITHOUT_EXPECT!>memberProp<!>: Int = 42
|
actual val <!ACTUAL_WITHOUT_EXPECT!>memberProp<!>: Int = 42
|
||||||
@@ -15,10 +14,10 @@ actual class <!ACTUAL_WITHOUT_EXPECT!>CommonClass<!> {
|
|||||||
actual inner class <!ACTUAL_WITHOUT_EXPECT!>Inner<!>
|
actual inner class <!ACTUAL_WITHOUT_EXPECT!>Inner<!>
|
||||||
}
|
}
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT{JVM}!>expect fun commonFun()<!>
|
expect fun commonFun()
|
||||||
actual fun <!ACTUAL_WITHOUT_EXPECT!>commonFun<!>() {}
|
actual fun <!ACTUAL_WITHOUT_EXPECT!>commonFun<!>() {}
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT{JVM}!>expect val commonProperty: String<!>
|
expect val commonProperty: String
|
||||||
actual val <!ACTUAL_WITHOUT_EXPECT!>commonProperty<!>: String
|
actual val <!ACTUAL_WITHOUT_EXPECT!>commonProperty<!>: String
|
||||||
get() = "hello"
|
get() = "hello"
|
||||||
|
|
||||||
|
|||||||
+3
-3
@@ -4,7 +4,7 @@
|
|||||||
expect fun parameterCount()
|
expect fun parameterCount()
|
||||||
fun parameterCount(p: String) {}
|
fun parameterCount(p: String) {}
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT{JVM}!>expect fun parameterCount2()<!>
|
expect fun parameterCount2()
|
||||||
actual fun <!ACTUAL_WITHOUT_EXPECT!>parameterCount2<!>(p: String) {}
|
actual fun <!ACTUAL_WITHOUT_EXPECT!>parameterCount2<!>(p: String) {}
|
||||||
|
|
||||||
expect fun callableKind(): Int
|
expect fun callableKind(): Int
|
||||||
@@ -13,9 +13,9 @@ val callableKind: Int = 1
|
|||||||
expect fun <T> typeParameterCount()
|
expect fun <T> typeParameterCount()
|
||||||
fun typeParameterCount() {}
|
fun typeParameterCount() {}
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT{JVM}!>expect enum class EnumEntries {
|
expect enum class EnumEntries {
|
||||||
ONE, TWO;
|
ONE, TWO;
|
||||||
}<!>
|
}
|
||||||
actual enum class <!ACTUAL_WITHOUT_EXPECT!>EnumEntries<!> {
|
actual enum class <!ACTUAL_WITHOUT_EXPECT!>EnumEntries<!> {
|
||||||
ONE;
|
ONE;
|
||||||
}
|
}
|
||||||
|
|||||||
Vendored
+2
-2
@@ -3,9 +3,9 @@
|
|||||||
// FILE: common.kt
|
// FILE: common.kt
|
||||||
|
|
||||||
// K2: false positve INCOMPATIBLE_MATCHING: KT-60155
|
// K2: false positve INCOMPATIBLE_MATCHING: KT-60155
|
||||||
<!EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}, EXPECT_ACTUAL_INCOMPATIBILITY{JVM}!>public expect abstract class AbstractMutableMap<K, V> : MutableMap<K, V> {
|
public expect abstract class AbstractMutableMap<K, V> : MutableMap<K, V> {
|
||||||
override val values: MutableCollection<V>
|
override val values: MutableCollection<V>
|
||||||
}<!>
|
}
|
||||||
|
|
||||||
// MODULE: m2-jvm()()(m1-common)
|
// MODULE: m2-jvm()()(m1-common)
|
||||||
// FILE: jvm.kt
|
// FILE: jvm.kt
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!><!DEPRECATED_MODIFIER, INCOMPATIBLE_MODIFIERS!>header<!> <!INCOMPATIBLE_MODIFIERS!>impl<!> class <!ACTUAL_WITHOUT_EXPECT!>First<!><!>
|
<!DEPRECATED_MODIFIER, INCOMPATIBLE_MODIFIERS!>header<!> <!INCOMPATIBLE_MODIFIERS!>impl<!> class <!ACTUAL_WITHOUT_EXPECT!>First<!>
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!><!DEPRECATED_MODIFIER, INCOMPATIBLE_MODIFIERS!>header<!> <!INCOMPATIBLE_MODIFIERS!>expect<!> class Second<!>
|
<!DEPRECATED_MODIFIER, INCOMPATIBLE_MODIFIERS!>header<!> <!INCOMPATIBLE_MODIFIERS!>expect<!> class Second
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!><!DEPRECATED_MODIFIER, INCOMPATIBLE_MODIFIERS!>header<!> <!INCOMPATIBLE_MODIFIERS!>actual<!> class <!ACTUAL_WITHOUT_EXPECT!>Third<!><!>
|
<!DEPRECATED_MODIFIER, INCOMPATIBLE_MODIFIERS!>header<!> <!INCOMPATIBLE_MODIFIERS!>actual<!> class <!ACTUAL_WITHOUT_EXPECT!>Third<!>
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!><!DEPRECATED_MODIFIER, INCOMPATIBLE_MODIFIERS!>impl<!> <!INCOMPATIBLE_MODIFIERS!>expect<!> class <!ACTUAL_WITHOUT_EXPECT!>Fourth<!><!>
|
<!DEPRECATED_MODIFIER, INCOMPATIBLE_MODIFIERS!>impl<!> <!INCOMPATIBLE_MODIFIERS!>expect<!> class <!ACTUAL_WITHOUT_EXPECT!>Fourth<!>
|
||||||
|
|
||||||
<!DEPRECATED_MODIFIER, INCOMPATIBLE_MODIFIERS!>impl<!> <!INCOMPATIBLE_MODIFIERS!>actual<!> class <!ACTUAL_WITHOUT_EXPECT!>Fifth<!>
|
<!DEPRECATED_MODIFIER, INCOMPATIBLE_MODIFIERS!>impl<!> <!INCOMPATIBLE_MODIFIERS!>actual<!> class <!ACTUAL_WITHOUT_EXPECT!>Fifth<!>
|
||||||
|
|
||||||
<!NO_ACTUAL_FOR_EXPECT!><!INCOMPATIBLE_MODIFIERS!>expect<!> <!INCOMPATIBLE_MODIFIERS!>actual<!> class <!ACTUAL_WITHOUT_EXPECT!>Sixth<!><!>
|
<!INCOMPATIBLE_MODIFIERS!>expect<!> <!INCOMPATIBLE_MODIFIERS!>actual<!> class <!ACTUAL_WITHOUT_EXPECT!>Sixth<!>
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user