diff --git a/core/descriptors/src/org/jetbrains/kotlin/builtins/BuiltInsClassDataFinder.kt b/core/descriptors/src/org/jetbrains/kotlin/builtins/BuiltInsClassDataFinder.kt index 018f7556812..acd12134c4a 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/builtins/BuiltInsClassDataFinder.kt +++ b/core/descriptors/src/org/jetbrains/kotlin/builtins/BuiltInsClassDataFinder.kt @@ -16,6 +16,7 @@ package org.jetbrains.kotlin.builtins +import org.jetbrains.kotlin.descriptors.SourceElement import org.jetbrains.kotlin.name.ClassId import org.jetbrains.kotlin.serialization.ClassData import org.jetbrains.kotlin.serialization.ClassDataWithSource @@ -36,6 +37,6 @@ class BuiltInsClassDataFinder( override fun findClassData(classId: ClassId): ClassDataWithSource? { val classProto = classIdToProto[classId] ?: return null - return ClassDataWithSource(ClassData(nameResolver, classProto)) + return ClassDataWithSource(ClassData(nameResolver, classProto), SourceElement.NO_SOURCE) } } diff --git a/core/deserialization/src/org/jetbrains/kotlin/serialization/ProtoDatas.kt b/core/deserialization/src/org/jetbrains/kotlin/serialization/ProtoDatas.kt index 3727876918c..44a655520ef 100644 --- a/core/deserialization/src/org/jetbrains/kotlin/serialization/ProtoDatas.kt +++ b/core/deserialization/src/org/jetbrains/kotlin/serialization/ProtoDatas.kt @@ -26,7 +26,7 @@ data class ClassData( data class ClassDataWithSource( val classData: ClassData, - val sourceElement: SourceElement = SourceElement.NO_SOURCE + val sourceElement: SourceElement ) data class PackageData( diff --git a/core/deserialization/src/org/jetbrains/kotlin/serialization/deserialization/ProtoContainer.kt b/core/deserialization/src/org/jetbrains/kotlin/serialization/deserialization/ProtoContainer.kt index 644b071d416..1d148a2b275 100644 --- a/core/deserialization/src/org/jetbrains/kotlin/serialization/deserialization/ProtoContainer.kt +++ b/core/deserialization/src/org/jetbrains/kotlin/serialization/deserialization/ProtoContainer.kt @@ -53,4 +53,6 @@ sealed class ProtoContainer( } abstract fun debugFqName(): FqName + + override fun toString() = "${javaClass.simpleName}: ${debugFqName()}" } diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/classFile/DeserializerForClassfileDecompiler.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/classFile/DeserializerForClassfileDecompiler.kt index 6dc9661d7a9..c2bd42ee5a7 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/classFile/DeserializerForClassfileDecompiler.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/classFile/DeserializerForClassfileDecompiler.kt @@ -131,7 +131,7 @@ class DirectoryBasedDataFinder( return null } - return ClassDataWithSource(JvmProtoBufUtil.readClassDataFrom(data, strings)) + return ClassDataWithSource(JvmProtoBufUtil.readClassDataFrom(data, strings), KotlinJvmBinarySourceElement(binaryClass)) } } diff --git a/js/js.serializer/src/org/jetbrains/kotlin/serialization/js/KotlinJavascriptClassDataFinder.kt b/js/js.serializer/src/org/jetbrains/kotlin/serialization/js/KotlinJavascriptClassDataFinder.kt index 00cd93231fe..d541291736d 100644 --- a/js/js.serializer/src/org/jetbrains/kotlin/serialization/js/KotlinJavascriptClassDataFinder.kt +++ b/js/js.serializer/src/org/jetbrains/kotlin/serialization/js/KotlinJavascriptClassDataFinder.kt @@ -16,6 +16,7 @@ package org.jetbrains.kotlin.serialization.js +import org.jetbrains.kotlin.descriptors.SourceElement import org.jetbrains.kotlin.name.ClassId import org.jetbrains.kotlin.serialization.ClassData import org.jetbrains.kotlin.serialization.ClassDataWithSource @@ -31,6 +32,6 @@ class KotlinJavascriptClassDataFinder( override fun findClassData(classId: ClassId): ClassDataWithSource? { val stream = loadResource(KotlinJavascriptSerializedResourcePaths.getClassMetadataPath(classId)) ?: return null val classProto = ProtoBuf.Class.parseFrom(stream, JsSerializerProtocol.extensionRegistry) - return ClassDataWithSource(ClassData(nameResolver, classProto)) + return ClassDataWithSource(ClassData(nameResolver, classProto), SourceElement.NO_SOURCE) } }