Distinguish classes from different sourcesets in SealedInheritorInSameModuleChecker

#KT-45848 Fixed
#KT-46031
This commit is contained in:
Dmitriy Novozhilov
2021-04-09 16:01:20 +03:00
committed by TeamCityServer
parent 66e4d5664a
commit 803d47daaa
20 changed files with 197 additions and 4 deletions
@@ -0,0 +1,6 @@
$TESTDATA_DIR$/inheritorOfExpectSealedClass/common-1.kt
$TESTDATA_DIR$/inheritorOfExpectSealedClass/common-2.kt
$TESTDATA_DIR$/inheritorOfExpectSealedClass/common-3.kt
-d
$TEMP_DIR$
-Xcommon-sources=$TESTDATA_DIR$/inheritorOfExpectSealedClass/common-1.kt,$TESTDATA_DIR$/inheritorOfExpectSealedClass/common-2.kt
@@ -0,0 +1,4 @@
compiler/testData/cli/metadata/inheritorOfExpectSealedClass/common-3.kt:1:17: error: inheritance of sealed classes or interfaces from different module is prohibited
class Derived : Base()
^
COMPILATION_ERROR
@@ -0,0 +1 @@
expect sealed class Base
@@ -0,0 +1 @@
actual sealed class Base
@@ -0,0 +1 @@
class Derived : Base()
@@ -0,0 +1,5 @@
$TESTDATA_DIR$/optionalExpectationUsage.kt
-d
$TEMP_DIR$
-cp
$TESTDATA_DIR$/../../../../dist/common/kotlin-stdlib-common.jar
@@ -0,0 +1,7 @@
@kotlin.ExperimentalMultiplatform
@kotlin.OptionalExpectation
expect annotation class Ann()
@Ann
@kotlin.ExperimentalMultiplatform
fun foo() {}
@@ -0,0 +1 @@
OK