KT-29340 Provide effective modality for enum class in IR

* if enum class has abstract members, then it is ABSTRACT
* otherwise, if enum class has entries with members, then it is OPEN
* otherwise, it is FINAL.
This commit is contained in:
Dmitry Petrov
2019-01-21 12:53:13 +03:00
parent efdb4e1d5d
commit 360bfcaf6a
16 changed files with 776 additions and 39 deletions
@@ -111,6 +111,11 @@ public class IrTextTestCaseGenerated extends AbstractIrTextTestCase {
runTest("compiler/testData/ir/irText/classes/enum.kt");
}
@TestMetadata("enumClassModality.kt")
public void testEnumClassModality() throws Exception {
runTest("compiler/testData/ir/irText/classes/enumClassModality.kt");
}
@TestMetadata("enumWithSecondaryCtor.kt")
public void testEnumWithSecondaryCtor() throws Exception {
runTest("compiler/testData/ir/irText/classes/enumWithSecondaryCtor.kt");