Enum classes have private constructor visibility from front-end point of view.

Protected visibility hardcoded in jvm backend.
This commit is contained in:
Pavel V. Talanov
2012-08-29 15:18:06 +04:00
parent 544be17c3d
commit d831f164cc
7 changed files with 17 additions and 13 deletions
@@ -1023,9 +1023,15 @@ public class JetTypeMapper {
ClassKind kind = ((ClassDescriptor) containingDeclaration).getKind();
if (kind == ClassKind.OBJECT) {
return ACC_PUBLIC;
} else if (kind == ClassKind.ENUM_ENTRY) {
}
else if (kind == ClassKind.ENUM_ENTRY) {
return ACC_PACKAGE_PRIVATE;
}
else if (kind == ClassKind.ENUM_CLASS) {
//TODO: should be ACC_PRIVATE
// see http://youtrack.jetbrains.com/issue/KT-2680
return ACC_PROTECTED;
}
}
if (containingDeclaration instanceof NamespaceDescriptor) {
return ACC_PUBLIC;