diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/context/StaticContext.java b/js/js.translator/src/org/jetbrains/k2js/translate/context/StaticContext.java index 7c66fcc04bf..7138d7e0a08 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/context/StaticContext.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/context/StaticContext.java @@ -328,7 +328,7 @@ public final class StaticContext { } String name = descriptor.getName().asString(); - if (!isEcma5() || JsDescriptorUtils.isAsPrivate((PropertyDescriptor) descriptor)) { + if (!isEcma5() || !JsDescriptorUtils.isSimpleProperty((PropertyDescriptor) descriptor)) { name = Namer.getKotlinBackingFieldName(name); } diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/declaration/PropertyTranslator.java b/js/js.translator/src/org/jetbrains/k2js/translate/declaration/PropertyTranslator.java index 45f7f7d77ea..a15e085c722 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/declaration/PropertyTranslator.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/declaration/PropertyTranslator.java @@ -58,11 +58,9 @@ public final class PropertyTranslator extends AbstractTranslator { @Nullable JetProperty declaration, @NotNull List result, @NotNull TranslationContext context) { - if (context.isEcma5() && !JsDescriptorUtils.isAsPrivate(descriptor)) { - return; + if (!JsDescriptorUtils.isSimpleProperty(descriptor)) { + new PropertyTranslator(descriptor, declaration, context).translate(result); } - - new PropertyTranslator(descriptor, declaration, context).translate(result); } private PropertyTranslator(@NotNull PropertyDescriptor descriptor, @Nullable JetProperty declaration, @NotNull TranslationContext context) { diff --git a/js/js.translator/src/org/jetbrains/k2js/translate/utils/JsDescriptorUtils.java b/js/js.translator/src/org/jetbrains/k2js/translate/utils/JsDescriptorUtils.java index f704cbc98cb..b1c4e741d1a 100644 --- a/js/js.translator/src/org/jetbrains/k2js/translate/utils/JsDescriptorUtils.java +++ b/js/js.translator/src/org/jetbrains/k2js/translate/utils/JsDescriptorUtils.java @@ -140,10 +140,10 @@ public final class JsDescriptorUtils { return accessorDescriptor == null || accessorDescriptor.isDefault(); } - public static boolean isAsPrivate(@NotNull PropertyDescriptor propertyDescriptor) { - return isExtension(propertyDescriptor) || - !isDefaultAccessor(propertyDescriptor.getGetter()) || - !isDefaultAccessor(propertyDescriptor.getSetter()); + public static boolean isSimpleProperty(@NotNull PropertyDescriptor propertyDescriptor) { + return !isExtension(propertyDescriptor) && + isDefaultAccessor(propertyDescriptor.getGetter()) && + isDefaultAccessor(propertyDescriptor.getSetter()); } public static boolean isStandardDeclaration(@NotNull DeclarationDescriptor descriptor) {