db31f1f926
The enumEntriesIntrinsicMultipleEnums.kt test was supposed to check that JVM backend generates 3 `$EntriesIntrinsicMappings` classes: for X, for Y, and for Z. Mappings classes are generated for enums without `entries`, i.e. Kotlin enums compiled without `EnumEntries` language feature, and Java enums. The test incorrectly _enabled_ the language feature for X though, and `$EntriesIntrinsicMappings` for X was generated anyway because of KT-61208. To keep the original intention of the test, I'm disabling the language feature for X, so that it will be considered as enum without `entries`. KT-61208 will be fixed in a separate commit (with separate tests). The boxInline and bytecodeText tests changed their meaning when language feature EnumEntries started to be enabled by default, so those changes are a continuation toebd43fc8c0. The behavior did not change after enabling the feature, once again because of KT-61208. Also, remove obsolete error suppressions which are no longer needed after64c8ce18a0.
31 lines
511 B
Kotlin
Vendored
31 lines
511 B
Kotlin
Vendored
// TARGET_BACKEND: JVM_IR
|
|
// FULL_JDK
|
|
// WITH_STDLIB
|
|
|
|
// MODULE: lib
|
|
// !LANGUAGE: -EnumEntries
|
|
// FILE: MyEnums.kt
|
|
enum class MyEnum {
|
|
N, O
|
|
}
|
|
|
|
enum class MyEnum2 {
|
|
O, K
|
|
}
|
|
|
|
// MODULE: caller(lib)
|
|
// !LANGUAGE: +EnumEntries
|
|
// FILE: Box.kt
|
|
|
|
@OptIn(ExperimentalStdlibApi::class)
|
|
object Container {
|
|
fun getK() = MyEnum2.entries[1].toString()
|
|
}
|
|
|
|
@OptIn(ExperimentalStdlibApi::class)
|
|
fun box(): String {
|
|
return MyEnum.entries[1].toString() + Container.getK()
|
|
}
|
|
|
|
// 2 class [a-zA-Z]+\$EntriesMappings
|