Allow sealed inheritors for expect sealed classes in MPP submodules

KT-45842 Fixed
KTIJ-7068
This commit is contained in:
Dmitriy Novozhilov
2021-04-05 12:48:35 +03:00
committed by TeamCityServer
parent 1633190478
commit fe81078366
12 changed files with 78 additions and 3 deletions
@@ -0,0 +1,4 @@
package foo
expect sealed class <!LINE_MARKER("descr='Is subclassed by SealedWithPlatformActuals [common] SealedWithPlatformActuals [main] SimpleShared'"), LINE_MARKER("descr='Has actuals in JVM'")!>SealedWithSharedActual<!>()
expect sealed class <!LINE_MARKER("descr='Is subclassed by SimpleShared'")!>SealedWithPlatformActuals<!> : SealedWithSharedActual
@@ -0,0 +1,6 @@
MODULE common { platform=[JVM, JS, Native]; root=common }
MODULE intermediate { platform=[JVM]; root=intermediate }
MODULE main { platform=[JVM]; root=main }
intermediate -> common { kind=DEPENDS_ON }
main -> intermediate { kind=DEPENDS_ON }
@@ -0,0 +1,4 @@
package foo
actual sealed class <!LINE_MARKER("descr='Is subclassed by SealedWithPlatformActuals [main] SimpleShared'"), LINE_MARKER("descr='Has declaration in common module'")!>SealedWithSharedActual<!>
class SimpleShared : SealedWithPlatformActuals<!NO_CONSTRUCTOR!>()<!>
@@ -0,0 +1,3 @@
package foo
actual sealed class SealedWithPlatformActuals <!ACTUAL_WITHOUT_EXPECT!>actual constructor()<!>: <!SEALED_INHERITOR_IN_DIFFERENT_MODULE!>SealedWithSharedActual<!>()