diff --git a/compiler/tests/org/jetbrains/kotlin/serialization/jvm/DebugJvmProtoBuf.java b/compiler/tests/org/jetbrains/kotlin/serialization/jvm/DebugJvmProtoBuf.java
index 998621a521d..013cd945d48 100644
--- a/compiler/tests/org/jetbrains/kotlin/serialization/jvm/DebugJvmProtoBuf.java
+++ b/compiler/tests/org/jetbrains/kotlin/serialization/jvm/DebugJvmProtoBuf.java
@@ -13,7 +13,6 @@ public final class DebugJvmProtoBuf {
registry.add(org.jetbrains.kotlin.serialization.jvm.DebugJvmProtoBuf.typeAnnotation);
registry.add(org.jetbrains.kotlin.serialization.jvm.DebugJvmProtoBuf.isRaw);
registry.add(org.jetbrains.kotlin.serialization.jvm.DebugJvmProtoBuf.typeParameterAnnotation);
- registry.add(org.jetbrains.kotlin.serialization.jvm.DebugJvmProtoBuf.classAnnotation);
registry.add(org.jetbrains.kotlin.serialization.jvm.DebugJvmProtoBuf.classModuleName);
registry.add(org.jetbrains.kotlin.serialization.jvm.DebugJvmProtoBuf.packageModuleName);
}
@@ -4592,17 +4591,6 @@ public final class DebugJvmProtoBuf {
.newFileScopedGeneratedExtension(
org.jetbrains.kotlin.serialization.DebugProtoBuf.Annotation.class,
org.jetbrains.kotlin.serialization.DebugProtoBuf.Annotation.getDefaultInstance());
- public static final int CLASS_ANNOTATION_FIELD_NUMBER = 100;
- /**
- * extend .org.jetbrains.kotlin.serialization.Class { ... }
- */
- public static final
- com.google.protobuf.GeneratedMessage.GeneratedExtension<
- org.jetbrains.kotlin.serialization.DebugProtoBuf.Class,
- java.util.List> classAnnotation = com.google.protobuf.GeneratedMessage
- .newFileScopedGeneratedExtension(
- org.jetbrains.kotlin.serialization.DebugProtoBuf.Annotation.class,
- org.jetbrains.kotlin.serialization.DebugProtoBuf.Annotation.getDefaultInstance());
public static final int CLASS_MODULE_NAME_FIELD_NUMBER = 101;
/**
* extend .org.jetbrains.kotlin.serialization.Class { ... }
@@ -4704,14 +4692,11 @@ public final class DebugJvmProtoBuf {
"rameter_annotation\0221.org.jetbrains.kotli" +
"n.serialization.TypeParameter\030d \003(\0132..or" +
"g.jetbrains.kotlin.serialization.Annotat" +
- "ion:s\n\020class_annotation\022).org.jetbrains." +
- "kotlin.serialization.Class\030d \003(\0132..org.j" +
- "etbrains.kotlin.serialization.Annotation" +
- ":J\n\021class_module_name\022).org.jetbrains.ko" +
- "tlin.serialization.Class\030e \001(\005B\004\230\265\030\001:N\n\023",
- "package_module_name\022+.org.jetbrains.kotl" +
- "in.serialization.Package\030e \001(\005B\004\230\265\030\001B\022B\020" +
- "DebugJvmProtoBuf"
+ "ion:J\n\021class_module_name\022).org.jetbrains" +
+ ".kotlin.serialization.Class\030e \001(\005B\004\230\265\030\001:" +
+ "N\n\023package_module_name\022+.org.jetbrains.k" +
+ "otlin.serialization.Package\030e \001(\005B\004\230\265\030\001B" +
+ "\022B\020DebugJvmProtoBuf"
};
com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() {
@@ -4754,9 +4739,8 @@ public final class DebugJvmProtoBuf {
typeAnnotation.internalInit(descriptor.getExtensions().get(3));
isRaw.internalInit(descriptor.getExtensions().get(4));
typeParameterAnnotation.internalInit(descriptor.getExtensions().get(5));
- classAnnotation.internalInit(descriptor.getExtensions().get(6));
- classModuleName.internalInit(descriptor.getExtensions().get(7));
- packageModuleName.internalInit(descriptor.getExtensions().get(8));
+ classModuleName.internalInit(descriptor.getExtensions().get(6));
+ packageModuleName.internalInit(descriptor.getExtensions().get(7));
com.google.protobuf.ExtensionRegistry registry =
com.google.protobuf.ExtensionRegistry.newInstance();
registry.add(org.jetbrains.kotlin.serialization.DebugExtOptionsProtoBuf.stringIdInTable);
diff --git a/core/descriptor.loader.java/src/jvm_descriptors.proto b/core/descriptor.loader.java/src/jvm_descriptors.proto
index 0910354e74c..811f9d1e2bb 100644
--- a/core/descriptor.loader.java/src/jvm_descriptors.proto
+++ b/core/descriptor.loader.java/src/jvm_descriptors.proto
@@ -110,8 +110,6 @@ extend TypeParameter {
}
extend Class {
- repeated Annotation class_annotation = 100;
-
// If absent, assumed to be JvmAbi.DEFAULT_MODULE_NAME
optional int32 class_module_name = 101 [(string_id_in_table) = true];
}
diff --git a/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/kotlin/BinaryClassAnnotationAndConstantLoaderImpl.kt b/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/kotlin/BinaryClassAnnotationAndConstantLoaderImpl.kt
index 5ad51a79954..325d74c0edb 100644
--- a/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/kotlin/BinaryClassAnnotationAndConstantLoaderImpl.kt
+++ b/core/descriptor.loader.java/src/org/jetbrains/kotlin/load/kotlin/BinaryClassAnnotationAndConstantLoaderImpl.kt
@@ -34,7 +34,6 @@ import org.jetbrains.kotlin.serialization.deserialization.AnnotationDeserializer
import org.jetbrains.kotlin.serialization.deserialization.ErrorReporter
import org.jetbrains.kotlin.serialization.deserialization.NameResolver
import org.jetbrains.kotlin.serialization.deserialization.findClassAcrossModuleDependencies
-import org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf
import org.jetbrains.kotlin.storage.StorageManager
import org.jetbrains.kotlin.types.ErrorUtils
import java.util.*
@@ -50,18 +49,6 @@ class BinaryClassAnnotationAndConstantLoaderImpl(
private val annotationDeserializer = AnnotationDeserializer(module)
private val factory = ConstantValueFactory(module.builtIns)
- override fun loadClassAnnotations(
- classProto: ProtoBuf.Class,
- nameResolver: NameResolver
- ): List {
- val binaryAnnotationDescriptors = super.loadClassAnnotations(classProto, nameResolver)
- val serializedAnnotations = classProto.getExtension(JvmProtoBuf.classAnnotation).orEmpty()
- val serializedAnnotationDescriptors = serializedAnnotations.map {
- annotationDeserializer.deserializeAnnotation(it, nameResolver)
- }
- return binaryAnnotationDescriptors + serializedAnnotationDescriptors
- }
-
override fun loadTypeAnnotation(proto: ProtoBuf.Annotation, nameResolver: NameResolver): AnnotationDescriptor =
annotationDeserializer.deserializeAnnotation(proto, nameResolver)
diff --git a/core/descriptor.loader.java/src/org/jetbrains/kotlin/serialization/jvm/JvmProtoBuf.java b/core/descriptor.loader.java/src/org/jetbrains/kotlin/serialization/jvm/JvmProtoBuf.java
index 842c4a117c0..3a383ae5fb9 100644
--- a/core/descriptor.loader.java/src/org/jetbrains/kotlin/serialization/jvm/JvmProtoBuf.java
+++ b/core/descriptor.loader.java/src/org/jetbrains/kotlin/serialization/jvm/JvmProtoBuf.java
@@ -13,7 +13,6 @@ public final class JvmProtoBuf {
registry.add(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.typeAnnotation);
registry.add(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.isRaw);
registry.add(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.typeParameterAnnotation);
- registry.add(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.classAnnotation);
registry.add(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.classModuleName);
registry.add(org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf.packageModuleName);
}
@@ -3803,21 +3802,6 @@ public final class JvmProtoBuf {
100,
com.google.protobuf.WireFormat.FieldType.MESSAGE,
false);
- public static final int CLASS_ANNOTATION_FIELD_NUMBER = 100;
- /**
- * extend .org.jetbrains.kotlin.serialization.Class { ... }
- */
- public static final
- com.google.protobuf.GeneratedMessageLite.GeneratedExtension<
- org.jetbrains.kotlin.serialization.ProtoBuf.Class,
- java.util.List> classAnnotation = com.google.protobuf.GeneratedMessageLite
- .newRepeatedGeneratedExtension(
- org.jetbrains.kotlin.serialization.ProtoBuf.Class.getDefaultInstance(),
- org.jetbrains.kotlin.serialization.ProtoBuf.Annotation.getDefaultInstance(),
- null,
- 100,
- com.google.protobuf.WireFormat.FieldType.MESSAGE,
- false);
public static final int CLASS_MODULE_NAME_FIELD_NUMBER = 101;
/**
* extend .org.jetbrains.kotlin.serialization.Class { ... }
diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/classFile/KotlinClsStubBuilder.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/classFile/KotlinClsStubBuilder.kt
index 0b8ae32591f..17de4a48eb1 100644
--- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/classFile/KotlinClsStubBuilder.kt
+++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/classFile/KotlinClsStubBuilder.kt
@@ -38,7 +38,6 @@ import org.jetbrains.kotlin.serialization.ProtoBuf
import org.jetbrains.kotlin.serialization.deserialization.ErrorReporter
import org.jetbrains.kotlin.serialization.deserialization.NameResolver
import org.jetbrains.kotlin.serialization.deserialization.TypeTable
-import org.jetbrains.kotlin.serialization.jvm.JvmProtoBuf
import org.jetbrains.kotlin.serialization.jvm.JvmProtoBufUtil
import org.jetbrains.kotlin.storage.LockBasedStorageManager
@@ -114,16 +113,6 @@ class AnnotationLoaderForClassFileStubBuilder(
) : AbstractBinaryClassAnnotationAndConstantLoader(
LockBasedStorageManager.NO_LOCKS, kotlinClassFinder, errorReporter) {
- override fun loadClassAnnotations(
- classProto: ProtoBuf.Class,
- nameResolver: NameResolver
- ): List {
- val binaryAnnotationDescriptors = super.loadClassAnnotations(classProto, nameResolver)
- val serializedAnnotations = classProto.getExtension(JvmProtoBuf.classAnnotation).orEmpty()
- val serializedAnnotationDescriptors = serializedAnnotations.map { nameResolver.getClassId(it.id) }
- return binaryAnnotationDescriptors + serializedAnnotationDescriptors
- }
-
override fun loadTypeAnnotation(proto: ProtoBuf.Annotation, nameResolver: NameResolver): ClassId =
nameResolver.getClassId(proto.id)
diff --git a/jps-plugin/src/org/jetbrains/kotlin/jps/incremental/ProtoCompareGenerated.kt b/jps-plugin/src/org/jetbrains/kotlin/jps/incremental/ProtoCompareGenerated.kt
index 4a3907764d2..e09d74d90ab 100644
--- a/jps-plugin/src/org/jetbrains/kotlin/jps/incremental/ProtoCompareGenerated.kt
+++ b/jps-plugin/src/org/jetbrains/kotlin/jps/incremental/ProtoCompareGenerated.kt
@@ -112,12 +112,6 @@ open class ProtoCompareGenerated(val oldNameResolver: NameResolver, val newNameR
if (!checkEquals(old.typeTable, new.typeTable)) return false
}
- if (old.getExtensionCount(JvmProtoBuf.classAnnotation) != new.getExtensionCount(JvmProtoBuf.classAnnotation)) return false
-
- for(i in 0..old.getExtensionCount(JvmProtoBuf.classAnnotation) - 1) {
- if (!checkEquals(old.getExtension(JvmProtoBuf.classAnnotation, i), new.getExtension(JvmProtoBuf.classAnnotation, i))) return false
- }
-
if (old.hasExtension(JvmProtoBuf.classModuleName) != new.hasExtension(JvmProtoBuf.classModuleName)) return false
if (old.hasExtension(JvmProtoBuf.classModuleName)) {
if (!checkStringEquals(old.getExtension(JvmProtoBuf.classModuleName), new.getExtension(JvmProtoBuf.classModuleName))) return false
@@ -138,7 +132,6 @@ open class ProtoCompareGenerated(val oldNameResolver: NameResolver, val newNameR
PROPERTY_LIST,
ENUM_ENTRY_LIST,
TYPE_TABLE,
- CLASS_ANNOTATION_LIST,
CLASS_MODULE_NAME
}
@@ -178,12 +171,6 @@ open class ProtoCompareGenerated(val oldNameResolver: NameResolver, val newNameR
if (!checkEquals(old.typeTable, new.typeTable)) result.add(ProtoBufClassKind.TYPE_TABLE)
}
- if (old.getExtensionCount(JvmProtoBuf.classAnnotation) != new.getExtensionCount(JvmProtoBuf.classAnnotation)) result.add(ProtoBufClassKind.CLASS_ANNOTATION_LIST)
-
- for(i in 0..old.getExtensionCount(JvmProtoBuf.classAnnotation) - 1) {
- if (!checkEquals(old.getExtension(JvmProtoBuf.classAnnotation, i), new.getExtension(JvmProtoBuf.classAnnotation, i))) result.add(ProtoBufClassKind.CLASS_ANNOTATION_LIST)
- }
-
if (old.hasExtension(JvmProtoBuf.classModuleName) != new.hasExtension(JvmProtoBuf.classModuleName)) result.add(ProtoBufClassKind.CLASS_MODULE_NAME)
if (old.hasExtension(JvmProtoBuf.classModuleName)) {
if (!checkStringEquals(old.getExtension(JvmProtoBuf.classModuleName), new.getExtension(JvmProtoBuf.classModuleName))) result.add(ProtoBufClassKind.CLASS_MODULE_NAME)
@@ -426,14 +413,6 @@ open class ProtoCompareGenerated(val oldNameResolver: NameResolver, val newNameR
return true
}
- open fun checkEquals(old: ProtoBuf.Annotation, new: ProtoBuf.Annotation): Boolean {
- if (!checkClassIdEquals(old.id, new.id)) return false
-
- if (!checkEqualsAnnotationArgument(old, new)) return false
-
- return true
- }
-
open fun checkEquals(old: ProtoBuf.ValueParameter, new: ProtoBuf.ValueParameter): Boolean {
if (old.hasFlags() != new.hasFlags()) return false
if (old.hasFlags()) {
@@ -503,6 +482,14 @@ open class ProtoCompareGenerated(val oldNameResolver: NameResolver, val newNameR
return true
}
+ open fun checkEquals(old: ProtoBuf.Annotation, new: ProtoBuf.Annotation): Boolean {
+ if (!checkClassIdEquals(old.id, new.id)) return false
+
+ if (!checkEqualsAnnotationArgument(old, new)) return false
+
+ return true
+ }
+
open fun checkEquals(old: ProtoBuf.Type.Argument, new: ProtoBuf.Type.Argument): Boolean {
if (old.hasProjection() != new.hasProjection()) return false
if (old.hasProjection()) {
@@ -522,14 +509,6 @@ open class ProtoCompareGenerated(val oldNameResolver: NameResolver, val newNameR
return true
}
- open fun checkEquals(old: ProtoBuf.Annotation.Argument, new: ProtoBuf.Annotation.Argument): Boolean {
- if (!checkStringEquals(old.nameId, new.nameId)) return false
-
- if (!checkEquals(old.value, new.value)) return false
-
- return true
- }
-
open fun checkEquals(old: JvmProtoBuf.JvmFieldSignature, new: JvmProtoBuf.JvmFieldSignature): Boolean {
if (old.hasName() != new.hasName()) return false
if (old.hasName()) {
@@ -544,6 +523,14 @@ open class ProtoCompareGenerated(val oldNameResolver: NameResolver, val newNameR
return true
}
+ open fun checkEquals(old: ProtoBuf.Annotation.Argument, new: ProtoBuf.Annotation.Argument): Boolean {
+ if (!checkStringEquals(old.nameId, new.nameId)) return false
+
+ if (!checkEquals(old.value, new.value)) return false
+
+ return true
+ }
+
open fun checkEquals(old: ProtoBuf.Annotation.Argument.Value, new: ProtoBuf.Annotation.Argument.Value): Boolean {
if (old.hasType() != new.hasType()) return false
if (old.hasType()) {
@@ -892,10 +879,6 @@ fun ProtoBuf.Class.hashCode(stringIndexes: (Int) -> Int, fqNameIndexes: (Int) ->
hashCode = 31 * hashCode + typeTable.hashCode(stringIndexes, fqNameIndexes)
}
- for(i in 0..getExtensionCount(JvmProtoBuf.classAnnotation) - 1) {
- hashCode = 31 * hashCode + getExtension(JvmProtoBuf.classAnnotation, i).hashCode(stringIndexes, fqNameIndexes)
- }
-
if (hasExtension(JvmProtoBuf.classModuleName)) {
hashCode = 31 * hashCode + stringIndexes(getExtension(JvmProtoBuf.classModuleName))
}
@@ -1129,18 +1112,6 @@ fun ProtoBuf.EnumEntry.hashCode(stringIndexes: (Int) -> Int, fqNameIndexes: (Int
return hashCode
}
-fun ProtoBuf.Annotation.hashCode(stringIndexes: (Int) -> Int, fqNameIndexes: (Int) -> Int): Int {
- var hashCode = 1
-
- hashCode = 31 * hashCode + fqNameIndexes(id)
-
- for(i in 0..argumentCount - 1) {
- hashCode = 31 * hashCode + getArgument(i).hashCode(stringIndexes, fqNameIndexes)
- }
-
- return hashCode
-}
-
fun ProtoBuf.ValueParameter.hashCode(stringIndexes: (Int) -> Int, fqNameIndexes: (Int) -> Int): Int {
var hashCode = 1
@@ -1205,6 +1176,18 @@ fun JvmProtoBuf.JvmPropertySignature.hashCode(stringIndexes: (Int) -> Int, fqNam
return hashCode
}
+fun ProtoBuf.Annotation.hashCode(stringIndexes: (Int) -> Int, fqNameIndexes: (Int) -> Int): Int {
+ var hashCode = 1
+
+ hashCode = 31 * hashCode + fqNameIndexes(id)
+
+ for(i in 0..argumentCount - 1) {
+ hashCode = 31 * hashCode + getArgument(i).hashCode(stringIndexes, fqNameIndexes)
+ }
+
+ return hashCode
+}
+
fun ProtoBuf.Type.Argument.hashCode(stringIndexes: (Int) -> Int, fqNameIndexes: (Int) -> Int): Int {
var hashCode = 1
@@ -1223,16 +1206,6 @@ fun ProtoBuf.Type.Argument.hashCode(stringIndexes: (Int) -> Int, fqNameIndexes:
return hashCode
}
-fun ProtoBuf.Annotation.Argument.hashCode(stringIndexes: (Int) -> Int, fqNameIndexes: (Int) -> Int): Int {
- var hashCode = 1
-
- hashCode = 31 * hashCode + stringIndexes(nameId)
-
- hashCode = 31 * hashCode + value.hashCode(stringIndexes, fqNameIndexes)
-
- return hashCode
-}
-
fun JvmProtoBuf.JvmFieldSignature.hashCode(stringIndexes: (Int) -> Int, fqNameIndexes: (Int) -> Int): Int {
var hashCode = 1
@@ -1247,6 +1220,16 @@ fun JvmProtoBuf.JvmFieldSignature.hashCode(stringIndexes: (Int) -> Int, fqNameIn
return hashCode
}
+fun ProtoBuf.Annotation.Argument.hashCode(stringIndexes: (Int) -> Int, fqNameIndexes: (Int) -> Int): Int {
+ var hashCode = 1
+
+ hashCode = 31 * hashCode + stringIndexes(nameId)
+
+ hashCode = 31 * hashCode + value.hashCode(stringIndexes, fqNameIndexes)
+
+ return hashCode
+}
+
fun ProtoBuf.Annotation.Argument.Value.hashCode(stringIndexes: (Int) -> Int, fqNameIndexes: (Int) -> Int): Int {
var hashCode = 1
diff --git a/jps-plugin/src/org/jetbrains/kotlin/jps/incremental/protoDifferenceUtils.kt b/jps-plugin/src/org/jetbrains/kotlin/jps/incremental/protoDifferenceUtils.kt
index 386acf3ad3b..b2d0d43f7a6 100644
--- a/jps-plugin/src/org/jetbrains/kotlin/jps/incremental/protoDifferenceUtils.kt
+++ b/jps-plugin/src/org/jetbrains/kotlin/jps/incremental/protoDifferenceUtils.kt
@@ -158,8 +158,7 @@ private class DifferenceCalculatorForClass(oldData: ProtoMapValue, newData: Prot
ProtoBufClassKind.FLAGS,
ProtoBufClassKind.FQ_NAME,
ProtoBufClassKind.TYPE_PARAMETER_LIST,
- ProtoBufClassKind.SUPERTYPE_LIST,
- ProtoBufClassKind.CLASS_ANNOTATION_LIST
+ ProtoBufClassKind.SUPERTYPE_LIST
)
}