diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/AsmUtil.java b/compiler/backend/src/org/jetbrains/kotlin/codegen/AsmUtil.java index afec01d92df..09efebcd8d1 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/AsmUtil.java +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/AsmUtil.java @@ -309,7 +309,7 @@ public class AsmUtil { public static boolean isAbstractMethod(FunctionDescriptor functionDescriptor, OwnerKind kind, JvmDefaultMode jvmDefaultMode) { return (functionDescriptor.getModality() == Modality.ABSTRACT || (isJvmInterface(functionDescriptor.getContainingDeclaration()) && !JvmAnnotationUtilKt - .isCompiledToJvmDefaultIfNoAbstract(functionDescriptor, jvmDefaultMode))) + .isCompiledToJvmDefault(functionDescriptor, jvmDefaultMode))) && !isStaticMethod(kind, functionDescriptor); } diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/ClassBodyCodegen.java b/compiler/backend/src/org/jetbrains/kotlin/codegen/ClassBodyCodegen.java index d4bff188e13..4a8a3448c11 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/ClassBodyCodegen.java +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/ClassBodyCodegen.java @@ -223,7 +223,7 @@ public abstract class ClassBodyCodegen extends MemberCodegen accessor : ((CodegenContext) context).getAccessors()) { boolean compiledToJvmDefault = - JvmAnnotationUtilKt.isCompiledToJvmDefaultIfNoAbstract(accessor.getCalleeDescriptor(), state.getJvmDefaultMode()); + JvmAnnotationUtilKt.isCompiledToJvmDefault(accessor.getCalleeDescriptor(), state.getJvmDefaultMode()); OwnerKind kind = context.getContextKind(); if (!isInterface(context.getContextDescriptor()) || diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/context/CodegenContext.java b/compiler/backend/src/org/jetbrains/kotlin/codegen/context/CodegenContext.java index 1d23046739a..cb3a34e89d5 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/context/CodegenContext.java +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/context/CodegenContext.java @@ -31,7 +31,7 @@ import static org.jetbrains.kotlin.codegen.AsmUtil.getVisibilityAccessFlag; import static org.jetbrains.kotlin.codegen.JvmCodegenUtil.isInSamePackage; import static org.jetbrains.kotlin.codegen.JvmCodegenUtil.isNonDefaultInterfaceMember; import static org.jetbrains.kotlin.resolve.inline.InlineOnlyKt.isInlineOnlyPrivateInBytecode; -import static org.jetbrains.kotlin.resolve.jvm.annotations.JvmAnnotationUtilKt.isCallableMemberCompiledToJvmDefaultIfNoAbstract; +import static org.jetbrains.kotlin.resolve.jvm.annotations.JvmAnnotationUtilKt.isCallableMemberCompiledToJvmDefault; import static org.jetbrains.org.objectweb.asm.Opcodes.ACC_PRIVATE; import static org.jetbrains.org.objectweb.asm.Opcodes.ACC_PROTECTED; @@ -594,8 +594,8 @@ public abstract class CodegenContext { CodegenContext properContext = getFirstCrossInlineOrNonInlineContext(); DeclarationDescriptor enclosing = descriptor.getContainingDeclaration(); boolean isInliningContext = properContext.isInlineMethodContext(); - boolean sameJvmDefault = JvmAnnotationUtilKt.isCompiledToJvmDefaultIfNoAbstract(descriptor, getState().getJvmDefaultMode()) == - isCallableMemberCompiledToJvmDefaultIfNoAbstract(properContext.contextDescriptor, getState().getJvmDefaultMode()) || + boolean sameJvmDefault = JvmAnnotationUtilKt.isCompiledToJvmDefault(descriptor, getState().getJvmDefaultMode()) == + isCallableMemberCompiledToJvmDefault(properContext.contextDescriptor, getState().getJvmDefaultMode()) || properContext.contextDescriptor instanceof AccessorForCallableDescriptor; if (!isInliningContext && ( !properContext.hasThisDescriptor() || diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/inline/SourceCompilerForInline.kt b/compiler/backend/src/org/jetbrains/kotlin/codegen/inline/SourceCompilerForInline.kt index 1165fd906a5..357273eb4df 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/inline/SourceCompilerForInline.kt +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/inline/SourceCompilerForInline.kt @@ -20,7 +20,7 @@ import org.jetbrains.kotlin.resolve.DescriptorToSourceUtils import org.jetbrains.kotlin.resolve.DescriptorUtils import org.jetbrains.kotlin.resolve.calls.callUtil.getResolvedCallWithAssert import org.jetbrains.kotlin.resolve.isInlineClass -import org.jetbrains.kotlin.resolve.jvm.annotations.isCallableMemberCompiledToJvmDefaultIfNoAbstract +import org.jetbrains.kotlin.resolve.jvm.annotations.isCallableMemberCompiledToJvmDefault import org.jetbrains.kotlin.resolve.jvm.jvmSignature.JvmMethodSignature import org.jetbrains.kotlin.utils.addIfNotNull import org.jetbrains.org.objectweb.asm.Label @@ -408,7 +408,7 @@ class PsiSourceCompilerForInline(private val codegen: ExpressionCodegen, overrid when { DescriptorUtils.isInterface(descriptor) && innerDescriptor !is ClassDescriptor && - !innerDescriptor.isCallableMemberCompiledToJvmDefaultIfNoAbstract(state.jvmDefaultMode) -> + !innerDescriptor.isCallableMemberCompiledToJvmDefault(state.jvmDefaultMode) -> OwnerKind.DEFAULT_IMPLS else -> OwnerKind.IMPLEMENTATION diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/serialization/JvmSerializerExtension.kt b/compiler/backend/src/org/jetbrains/kotlin/codegen/serialization/JvmSerializerExtension.kt index 3101de8f2f4..1242f601c1b 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/serialization/JvmSerializerExtension.kt +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/serialization/JvmSerializerExtension.kt @@ -32,7 +32,6 @@ import org.jetbrains.kotlin.resolve.descriptorUtil.classId import org.jetbrains.kotlin.resolve.descriptorUtil.isEffectivelyPrivateApi import org.jetbrains.kotlin.resolve.descriptorUtil.nonSourceAnnotations import org.jetbrains.kotlin.resolve.jvm.annotations.hasJvmDefaultAnnotation -import org.jetbrains.kotlin.resolve.jvm.annotations.isCompiledToJvmDefaultIfNoAbstract import org.jetbrains.kotlin.serialization.DescriptorSerializer import org.jetbrains.kotlin.serialization.DescriptorSerializer.Companion.writeVersionRequirement import org.jetbrains.kotlin.serialization.SerializerExtension @@ -84,15 +83,13 @@ class JvmSerializerExtension @JvmOverloads constructor( if (moduleName != JvmProtoBufUtil.DEFAULT_MODULE_NAME) { proto.setExtension(JvmProtoBuf.classModuleName, stringTable.getStringIndex(moduleName)) } - //TODO: local delegated properties + //TODO: support local delegated properties in new defaults scheme val containerAsmType = if (DescriptorUtils.isInterface(descriptor)) typeMapper.mapDefaultImpls(descriptor) else typeMapper.mapClass(descriptor) writeLocalProperties(proto, containerAsmType, JvmProtoBuf.classLocalVariable) writeVersionRequirementForJvmDefaultIfNeeded(descriptor, proto, versionRequirementTable) - if ((jvmDefaultMode == JvmDefaultMode.ALL_INCOMPATIBLE || jvmDefaultMode == JvmDefaultMode.ALL_COMPATIBILITY) && - isInterface(descriptor) - ) { + if (jvmDefaultMode.forAllMethodsWithBody && isInterface(descriptor)) { proto.setExtension(JvmProtoBuf.generationOptions, JvmFlags.getPropertyFlags(true)) } } diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/state/KotlinTypeMapper.kt b/compiler/backend/src/org/jetbrains/kotlin/codegen/state/KotlinTypeMapper.kt index 38280bb6644..0ddd594c566 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/state/KotlinTypeMapper.kt +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/state/KotlinTypeMapper.kt @@ -57,7 +57,7 @@ import org.jetbrains.kotlin.resolve.descriptorUtil.module import org.jetbrains.kotlin.resolve.jvm.AsmTypes.DEFAULT_CONSTRUCTOR_MARKER import org.jetbrains.kotlin.resolve.jvm.AsmTypes.OBJECT_TYPE import org.jetbrains.kotlin.resolve.jvm.JvmClassName -import org.jetbrains.kotlin.resolve.jvm.annotations.isCompiledToJvmDefaultIfNoAbstract +import org.jetbrains.kotlin.resolve.jvm.annotations.isCompiledToJvmDefault import org.jetbrains.kotlin.resolve.jvm.jvmSignature.JvmMethodGenericSignature import org.jetbrains.kotlin.resolve.jvm.jvmSignature.JvmMethodParameterKind import org.jetbrains.kotlin.resolve.jvm.jvmSignature.JvmMethodSignature @@ -447,8 +447,8 @@ class KotlinTypeMapper @JvmOverloads constructor( baseMethodDescriptor = findBaseDeclaration(functionDescriptor).original val ownerForDefault = baseMethodDescriptor.containingDeclaration as ClassDescriptor - isDefaultMethodInInterface = isJvmInterface(ownerForDefault) && baseMethodDescriptor.isCompiledToJvmDefaultIfNoAbstract(jvmDefaultMode) - ownerForDefaultImpl = if (isJvmInterface(ownerForDefault) && !baseMethodDescriptor.isCompiledToJvmDefaultIfNoAbstract(jvmDefaultMode)) + isDefaultMethodInInterface = isJvmInterface(ownerForDefault) && baseMethodDescriptor.isCompiledToJvmDefault(jvmDefaultMode) + ownerForDefaultImpl = if (isJvmInterface(ownerForDefault) && !baseMethodDescriptor.isCompiledToJvmDefault(jvmDefaultMode)) mapDefaultImpls(ownerForDefault) else mapClass(ownerForDefault) @@ -457,7 +457,7 @@ class KotlinTypeMapper @JvmOverloads constructor( thisClass = mapClass(functionParent) dispatchReceiverKotlinType = functionParent.defaultType if (declarationOwner is JavaClassDescriptor || - (declarationFunctionDescriptor.isCompiledToJvmDefaultIfNoAbstract(jvmDefaultMode) && !isAccessor(descriptor)) + (declarationFunctionDescriptor.isCompiledToJvmDefault(jvmDefaultMode) && !isAccessor(descriptor)) ) { invokeOpcode = INVOKESPECIAL signature = mapSignatureSkipGeneric(functionDescriptor) @@ -469,7 +469,7 @@ class KotlinTypeMapper @JvmOverloads constructor( val originalDescriptor = descriptor.original signature = mapSignatureSkipGeneric(originalDescriptor, OwnerKind.DEFAULT_IMPLS) returnKotlinType = getReturnValueType(originalDescriptor) - if (descriptor is AccessorForCallableDescriptor<*> && descriptor.calleeDescriptor.isCompiledToJvmDefaultIfNoAbstract(jvmDefaultMode)) { + if (descriptor is AccessorForCallableDescriptor<*> && descriptor.calleeDescriptor.isCompiledToJvmDefault(jvmDefaultMode)) { owner = mapClass(functionParent) isInterfaceMember = true } else { @@ -1519,7 +1519,7 @@ class KotlinTypeMapper @JvmOverloads constructor( current = classCallable continue } - if (isSuperCall && !current.isCompiledToJvmDefaultIfNoAbstract(jvmDefaultMode) && !isInterface(current.containingDeclaration)) { + if (isSuperCall && !current.isCompiledToJvmDefault(jvmDefaultMode) && !isInterface(current.containingDeclaration)) { //Don't unwrap fake overrides from class to interface cause substituted override would be implicitly generated return current } diff --git a/compiler/config.jvm/src/org/jetbrains/kotlin/config/JvmDefaultMode.kt b/compiler/config.jvm/src/org/jetbrains/kotlin/config/JvmDefaultMode.kt index 72b0d768be5..299209d2e7d 100644 --- a/compiler/config.jvm/src/org/jetbrains/kotlin/config/JvmDefaultMode.kt +++ b/compiler/config.jvm/src/org/jetbrains/kotlin/config/JvmDefaultMode.kt @@ -18,7 +18,7 @@ enum class JvmDefaultMode(val description: String) { val isCompatibility get() = this == ENABLE_WITH_DEFAULT_IMPLS || this == ALL_COMPATIBILITY - val forAllMehtodsWithBody + val forAllMethodsWithBody get() = this == ALL_COMPATIBILITY || this == ALL_INCOMPATIBLE companion object { diff --git a/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/annotations/jvmAnnotationUtil.kt b/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/annotations/jvmAnnotationUtil.kt index a01f88b9816..5bd87c8cb5a 100644 --- a/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/annotations/jvmAnnotationUtil.kt +++ b/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/annotations/jvmAnnotationUtil.kt @@ -8,7 +8,6 @@ package org.jetbrains.kotlin.resolve.jvm.annotations import org.jetbrains.kotlin.config.JvmDefaultMode import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor import org.jetbrains.kotlin.descriptors.DeclarationDescriptor -import org.jetbrains.kotlin.descriptors.Modality import org.jetbrains.kotlin.descriptors.PropertyDescriptor import org.jetbrains.kotlin.descriptors.annotations.Annotated import org.jetbrains.kotlin.descriptors.annotations.AnnotationDescriptor @@ -17,7 +16,6 @@ import org.jetbrains.kotlin.load.java.JvmAbi.JVM_FIELD_ANNOTATION_FQ_NAME import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmProtoBufUtil import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.resolve.DescriptorUtils -import org.jetbrains.kotlin.resolve.DescriptorUtils.isInterface import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedClassDescriptor val JVM_DEFAULT_FQ_NAME = FqName("kotlin.jvm.JvmDefault") @@ -45,10 +43,10 @@ fun DeclarationDescriptor.findJvmFieldAnnotation(): AnnotationDescriptor? = fun DeclarationDescriptor.hasJvmFieldAnnotation(): Boolean = findJvmFieldAnnotation() != null -fun DeclarationDescriptor.isCallableMemberCompiledToJvmDefaultIfNoAbstract(jvmDefault: JvmDefaultMode): Boolean = - this is CallableMemberDescriptor && isCompiledToJvmDefaultIfNoAbstract(jvmDefault) +fun DeclarationDescriptor.isCallableMemberCompiledToJvmDefault(jvmDefault: JvmDefaultMode): Boolean = + this is CallableMemberDescriptor && isCompiledToJvmDefault(jvmDefault) -fun CallableMemberDescriptor.isCompiledToJvmDefaultIfNoAbstract(jvmDefault: JvmDefaultMode): Boolean { +fun CallableMemberDescriptor.isCompiledToJvmDefault(jvmDefault: JvmDefaultMode): Boolean { val directMember = DescriptorUtils.getDirectMember(this) val clazz = directMember.containingDeclaration diff --git a/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/checkers/InterfaceDefaultMethodCallChecker.kt b/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/checkers/InterfaceDefaultMethodCallChecker.kt index 68d688e01df..d2c03b4f971 100644 --- a/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/checkers/InterfaceDefaultMethodCallChecker.kt +++ b/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/checkers/InterfaceDefaultMethodCallChecker.kt @@ -36,7 +36,7 @@ import org.jetbrains.kotlin.resolve.calls.callResolverUtil.getSuperCallExpressio import org.jetbrains.kotlin.resolve.calls.checkers.CallChecker import org.jetbrains.kotlin.resolve.calls.checkers.CallCheckerContext import org.jetbrains.kotlin.resolve.calls.model.ResolvedCall -import org.jetbrains.kotlin.resolve.jvm.annotations.isCompiledToJvmDefaultIfNoAbstract +import org.jetbrains.kotlin.resolve.jvm.annotations.isCompiledToJvmDefault import org.jetbrains.kotlin.resolve.jvm.diagnostics.ErrorsJvm.* class InterfaceDefaultMethodCallChecker(val jvmTarget: JvmTarget) : CallChecker { @@ -63,13 +63,13 @@ class InterfaceDefaultMethodCallChecker(val jvmTarget: JvmTarget) : CallChecker val realDescriptorOwner = realDescriptor.containingDeclaration as? ClassDescriptor ?: return val jvmDefaultMode = context.languageVersionSettings.getFlag(JvmAnalysisFlags.jvmDefaultMode) - if (isInterface(realDescriptorOwner) && (realDescriptor is JavaCallableMemberDescriptor || realDescriptor.isCompiledToJvmDefaultIfNoAbstract(jvmDefaultMode))) { + if (isInterface(realDescriptorOwner) && (realDescriptor is JavaCallableMemberDescriptor || realDescriptor.isCompiledToJvmDefault(jvmDefaultMode))) { val bindingContext = context.trace.bindingContext val thisForSuperCall = getSuperCallLabelTarget(bindingContext, superCallExpression) if (thisForSuperCall != null && DescriptorUtils.isInterface(thisForSuperCall)) { val declarationWithCall = findInterfaceMember(thisForSuperCall, superCallExpression, bindingContext) - if (declarationWithCall?.isCompiledToJvmDefaultIfNoAbstract(jvmDefaultMode) == false) { + if (declarationWithCall?.isCompiledToJvmDefault(jvmDefaultMode) == false) { context.trace.report(INTERFACE_CANT_CALL_DEFAULT_METHOD_VIA_SUPER.on(reportOn)) return } diff --git a/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/checkers/JvmDefaultChecker.kt b/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/checkers/JvmDefaultChecker.kt index 21516b2de9d..83b2eb33421 100644 --- a/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/checkers/JvmDefaultChecker.kt +++ b/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/checkers/JvmDefaultChecker.kt @@ -18,7 +18,7 @@ import org.jetbrains.kotlin.resolve.OverridingUtil import org.jetbrains.kotlin.resolve.checkers.DeclarationChecker import org.jetbrains.kotlin.resolve.checkers.DeclarationCheckerContext import org.jetbrains.kotlin.resolve.jvm.annotations.JVM_DEFAULT_FQ_NAME -import org.jetbrains.kotlin.resolve.jvm.annotations.isCompiledToJvmDefaultIfNoAbstract +import org.jetbrains.kotlin.resolve.jvm.annotations.isCompiledToJvmDefault import org.jetbrains.kotlin.resolve.jvm.diagnostics.ErrorsJvm class JvmDefaultChecker(val jvmTarget: JvmTarget) : DeclarationChecker { @@ -41,7 +41,7 @@ class JvmDefaultChecker(val jvmTarget: JvmTarget) : DeclarationChecker { if (descriptor is ClassDescriptor) { val hasDeclaredJvmDefaults = descriptor.unsubstitutedMemberScope.getContributedDescriptors().filterIsInstance().any { - it.kind.isReal && it.isCompiledToJvmDefaultIfNoAbstract(jvmDefaultMode) + it.kind.isReal && it.isCompiledToJvmDefault(jvmDefaultMode) } if (!hasDeclaredJvmDefaults && !checkJvmDefaultsInHierarchy(descriptor, jvmDefaultMode)) { context.trace.report(ErrorsJvm.JVM_DEFAULT_THROUGH_INHERITANCE.on(declaration)) @@ -74,7 +74,7 @@ class JvmDefaultChecker(val jvmTarget: JvmTarget) : DeclarationChecker { return descriptor.unsubstitutedMemberScope.getContributedDescriptors().filterIsInstance() .all { memberDescriptor -> memberDescriptor.kind.isReal || OverridingUtil.filterOutOverridden(memberDescriptor.overriddenDescriptors.toSet()).all { - !isInterface(it.containingDeclaration) || !it.isCompiledToJvmDefaultIfNoAbstract(jvmDefaultMode) || it.modality == Modality.ABSTRACT + !isInterface(it.containingDeclaration) || !it.isCompiledToJvmDefault(jvmDefaultMode) || it.modality == Modality.ABSTRACT } } } diff --git a/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/platform/JvmDefaultSuperCallChecker.kt b/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/platform/JvmDefaultSuperCallChecker.kt index fa5e9078f12..cf1f0876d6b 100644 --- a/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/platform/JvmDefaultSuperCallChecker.kt +++ b/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/platform/JvmDefaultSuperCallChecker.kt @@ -13,7 +13,7 @@ import org.jetbrains.kotlin.resolve.calls.callResolverUtil.getSuperCallExpressio import org.jetbrains.kotlin.resolve.calls.checkers.CallChecker import org.jetbrains.kotlin.resolve.calls.checkers.CallCheckerContext import org.jetbrains.kotlin.resolve.calls.model.ResolvedCall -import org.jetbrains.kotlin.resolve.jvm.annotations.isCompiledToJvmDefaultIfNoAbstract +import org.jetbrains.kotlin.resolve.jvm.annotations.isCompiledToJvmDefault import org.jetbrains.kotlin.resolve.jvm.diagnostics.ErrorsJvm class JvmDefaultSuperCallChecker : CallChecker { @@ -23,7 +23,7 @@ class JvmDefaultSuperCallChecker : CallChecker { if (getSuperCallExpression(resolvedCall.call) == null) return val resultingDescriptor = resolvedCall.resultingDescriptor as? CallableMemberDescriptor ?: return - if (!resultingDescriptor.isCompiledToJvmDefaultIfNoAbstract(jvmDefaultMode)) return + if (!resultingDescriptor.isCompiledToJvmDefault(jvmDefaultMode)) return if (DescriptorUtils.isInterface(resultingDescriptor.containingDeclaration)) { context.trace.report(ErrorsJvm.USAGE_OF_JVM_DEFAULT_THROUGH_SUPER_CALL.on(reportOn)) diff --git a/core/metadata.jvm/src/org/jetbrains/kotlin/metadata/jvm/deserialization/JvmFlags.kt b/core/metadata.jvm/src/org/jetbrains/kotlin/metadata/jvm/deserialization/JvmFlags.kt index 47849df6bd1..994cf10ba86 100644 --- a/core/metadata.jvm/src/org/jetbrains/kotlin/metadata/jvm/deserialization/JvmFlags.kt +++ b/core/metadata.jvm/src/org/jetbrains/kotlin/metadata/jvm/deserialization/JvmFlags.kt @@ -19,5 +19,5 @@ object JvmFlags { IS_MOVED_FROM_INTERFACE_COMPANION.toFlags(booleanToIntFlag) //Class - val IS_NEW_PLACE_FOR_BODY_GENERATION = Flags.FlagField.booleanFirst() + val ARE_INTERFACE_METHOD_BODIES_INSIDE = Flags.FlagField.booleanFirst() } diff --git a/core/metadata.jvm/src/org/jetbrains/kotlin/metadata/jvm/deserialization/JvmProtoBufUtil.kt b/core/metadata.jvm/src/org/jetbrains/kotlin/metadata/jvm/deserialization/JvmProtoBufUtil.kt index 603983585a4..8941031fd8f 100644 --- a/core/metadata.jvm/src/org/jetbrains/kotlin/metadata/jvm/deserialization/JvmProtoBufUtil.kt +++ b/core/metadata.jvm/src/org/jetbrains/kotlin/metadata/jvm/deserialization/JvmProtoBufUtil.kt @@ -132,5 +132,5 @@ object JvmProtoBufUtil { @JvmStatic fun isNewPlaceForBodyGeneration(proto: ProtoBuf.Class): Boolean = - JvmFlags.IS_NEW_PLACE_FOR_BODY_GENERATION.get(proto.getExtension(JvmProtoBuf.generationOptions)) + JvmFlags.ARE_INTERFACE_METHOD_BODIES_INSIDE.get(proto.getExtension(JvmProtoBuf.generationOptions)) }