Revert "Generate private constructors for Enums" cause of bootstrap problem
This reverts commit 81435c9
This commit is contained in:
@@ -546,8 +546,16 @@ public class AsmUtil {
|
|||||||
return NO_FLAG_PACKAGE_PRIVATE;
|
return NO_FLAG_PACKAGE_PRIVATE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (memberDescriptor instanceof ConstructorDescriptor && isEnumEntry(containingDeclaration)) {
|
// the following code is only for PRIVATE visibility of member
|
||||||
return NO_FLAG_PACKAGE_PRIVATE;
|
if (memberDescriptor instanceof ConstructorDescriptor) {
|
||||||
|
if (isEnumEntry(containingDeclaration)) {
|
||||||
|
return NO_FLAG_PACKAGE_PRIVATE;
|
||||||
|
}
|
||||||
|
if (isEnumClass(containingDeclaration)) {
|
||||||
|
//TODO: should be ACC_PRIVATE
|
||||||
|
// see http://youtrack.jetbrains.com/issue/KT-2680
|
||||||
|
return ACC_PROTECTED;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
@@ -9,5 +9,5 @@ public enum E {
|
|||||||
@kotlin.Deprecated(message = "b")
|
@kotlin.Deprecated(message = "b")
|
||||||
Entry3;
|
Entry3;
|
||||||
|
|
||||||
private E() { /* compiled code */ }
|
protected E() { /* compiled code */ }
|
||||||
}
|
}
|
||||||
|
|||||||
Vendored
+1
-1
@@ -26,7 +26,7 @@ public final enum class TestEnum {
|
|||||||
public final static field ANSWER: TestEnum
|
public final static field ANSWER: TestEnum
|
||||||
private final field z: int
|
private final field z: int
|
||||||
static method <clinit>(): void
|
static method <clinit>(): void
|
||||||
private method <init>(p0: java.lang.String, p1: int, p2: int): void
|
protected method <init>(p0: java.lang.String, p1: int, p2: int): void
|
||||||
public final method getZ(): int
|
public final method getZ(): int
|
||||||
public static method valueOf(p0: java.lang.String): TestEnum
|
public static method valueOf(p0: java.lang.String): TestEnum
|
||||||
public static method values(): TestEnum[]
|
public static method values(): TestEnum[]
|
||||||
|
|||||||
@@ -1,7 +0,0 @@
|
|||||||
enum class Foo {
|
|
||||||
A, B, C
|
|
||||||
}
|
|
||||||
|
|
||||||
// TESTED_OBJECT_KIND: function
|
|
||||||
// TESTED_OBJECTS: Foo, <init>
|
|
||||||
// FLAGS: ACC_PRIVATE
|
|
||||||
-5
@@ -444,11 +444,6 @@ public class WriteFlagsTestGenerated extends AbstractWriteFlagsTest {
|
|||||||
runTest("compiler/testData/writeFlags/function/constructors/classObject.kt");
|
runTest("compiler/testData/writeFlags/function/constructors/classObject.kt");
|
||||||
}
|
}
|
||||||
|
|
||||||
@TestMetadata("enum.kt")
|
|
||||||
public void testEnum() throws Exception {
|
|
||||||
runTest("compiler/testData/writeFlags/function/constructors/enum.kt");
|
|
||||||
}
|
|
||||||
|
|
||||||
@TestMetadata("objectInClass.kt")
|
@TestMetadata("objectInClass.kt")
|
||||||
public void testObjectInClass() throws Exception {
|
public void testObjectInClass() throws Exception {
|
||||||
runTest("compiler/testData/writeFlags/function/constructors/objectInClass.kt");
|
runTest("compiler/testData/writeFlags/function/constructors/objectInClass.kt");
|
||||||
|
|||||||
Reference in New Issue
Block a user