From addb048ce9e1a7ddec5bcdd22216b8972300d43d Mon Sep 17 00:00:00 2001 From: Sergej Jaskiewicz Date: Thu, 15 Jun 2023 20:46:08 +0200 Subject: [PATCH] [FIR] Generate signatures for synthesized class delegation fields This is to align the behavior with K1. ^KT-57754 Fixed Co-authored-by: Alexander Udalov --- .../kotlin/fir/signaturer/FirBasedSignatureComposer.kt | 1 - compiler/testData/ir/irText/classes/delegatedImplementation.kt | 3 --- .../classes/delegatedImplementationWithExplicitOverride.kt | 3 --- .../irText/declarations/annotations/inheritingDeprecation.kt | 3 --- compiler/testData/ir/irText/declarations/kt35550.kt | 3 --- .../ir/irText/declarations/parameters/delegatedMembers.kt | 3 --- .../ir/irText/firProblems/DelegationAndInheritanceFromJava.kt | 3 --- .../ir/irText/firProblems/lambdaInEnumEntryConstructorCall.kt | 2 +- compiler/testData/ir/irText/types/javaWildcardType.kt | 3 --- .../irText/types/nullChecks/nullCheckOnInterfaceDelegation.kt | 3 --- 10 files changed, 1 insertion(+), 26 deletions(-) diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/signaturer/FirBasedSignatureComposer.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/signaturer/FirBasedSignatureComposer.kt index 4dcabe38d20..782eb25734a 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/signaturer/FirBasedSignatureComposer.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/signaturer/FirBasedSignatureComposer.kt @@ -95,7 +95,6 @@ class FirBasedSignatureComposer(override val mangler: FirMangler) : Fir2IrSignat if (declaration is FirRegularClass && declaration.classId.isLocal) return null if (declaration is FirCallableDeclaration) { if (declaration.visibility == Visibilities.Local) return null - if (declaration is FirField && declaration.source?.kind == KtFakeSourceElementKind.ClassDelegationField) return null if (declaration.dispatchReceiverClassLookupTagOrNull()?.classId?.isLocal == true || containingClass?.classId?.isLocal == true) return null } diff --git a/compiler/testData/ir/irText/classes/delegatedImplementation.kt b/compiler/testData/ir/irText/classes/delegatedImplementation.kt index a8c92e0f01c..5cdc30d8d0d 100644 --- a/compiler/testData/ir/irText/classes/delegatedImplementation.kt +++ b/compiler/testData/ir/irText/classes/delegatedImplementation.kt @@ -1,6 +1,3 @@ -// MUTE_SIGNATURE_COMPARISON_K2: ANY -// ^ KT-57754 - interface IBase { fun foo(x: Int, s: String) fun bar(): Int diff --git a/compiler/testData/ir/irText/classes/delegatedImplementationWithExplicitOverride.kt b/compiler/testData/ir/irText/classes/delegatedImplementationWithExplicitOverride.kt index 7a9b3aa3bd7..21e66b68421 100644 --- a/compiler/testData/ir/irText/classes/delegatedImplementationWithExplicitOverride.kt +++ b/compiler/testData/ir/irText/classes/delegatedImplementationWithExplicitOverride.kt @@ -1,6 +1,3 @@ -// MUTE_SIGNATURE_COMPARISON_K2: ANY -// ^ KT-57754 - interface IFooBar { fun foo() fun bar() diff --git a/compiler/testData/ir/irText/declarations/annotations/inheritingDeprecation.kt b/compiler/testData/ir/irText/declarations/annotations/inheritingDeprecation.kt index 104a6444de1..71becc0f543 100644 --- a/compiler/testData/ir/irText/declarations/annotations/inheritingDeprecation.kt +++ b/compiler/testData/ir/irText/declarations/annotations/inheritingDeprecation.kt @@ -1,6 +1,3 @@ -// MUTE_SIGNATURE_COMPARISON_K2: ANY -// ^ KT-57754 - interface IFoo { @Deprecated("") val prop: String get() = "" diff --git a/compiler/testData/ir/irText/declarations/kt35550.kt b/compiler/testData/ir/irText/declarations/kt35550.kt index 93ec96f2eaf..06937b70091 100644 --- a/compiler/testData/ir/irText/declarations/kt35550.kt +++ b/compiler/testData/ir/irText/declarations/kt35550.kt @@ -1,6 +1,3 @@ -// MUTE_SIGNATURE_COMPARISON_K2: ANY -// ^ KT-57754 - interface I { val T.id: T get() = this diff --git a/compiler/testData/ir/irText/declarations/parameters/delegatedMembers.kt b/compiler/testData/ir/irText/declarations/parameters/delegatedMembers.kt index bd40076f76c..701f9f662df 100644 --- a/compiler/testData/ir/irText/declarations/parameters/delegatedMembers.kt +++ b/compiler/testData/ir/irText/declarations/parameters/delegatedMembers.kt @@ -1,6 +1,3 @@ -// MUTE_SIGNATURE_COMPARISON_K2: ANY -// ^ KT-57754 - interface IBase { fun foo(x: Int) val bar: Int diff --git a/compiler/testData/ir/irText/firProblems/DelegationAndInheritanceFromJava.kt b/compiler/testData/ir/irText/firProblems/DelegationAndInheritanceFromJava.kt index f8a797f92cb..5adc461fd0f 100644 --- a/compiler/testData/ir/irText/firProblems/DelegationAndInheritanceFromJava.kt +++ b/compiler/testData/ir/irText/firProblems/DelegationAndInheritanceFromJava.kt @@ -1,8 +1,5 @@ // TARGET_BACKEND: JVM -// MUTE_SIGNATURE_COMPARISON_K2: ANY -// ^ KT-57754 - // FILE: Foo.java import java.util.Set; diff --git a/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.kt b/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.kt index aadac089a9b..6faa4a6cbdf 100644 --- a/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.kt +++ b/compiler/testData/ir/irText/firProblems/lambdaInEnumEntryConstructorCall.kt @@ -5,7 +5,7 @@ // KT-50774 // MUTE_SIGNATURE_COMPARISON_K2: ANY -// ^ KT-57427, KT-57754 +// ^ KT-57427 class Wrapper(var baseUrl: String) diff --git a/compiler/testData/ir/irText/types/javaWildcardType.kt b/compiler/testData/ir/irText/types/javaWildcardType.kt index 181e6eb58b2..72543abfa93 100644 --- a/compiler/testData/ir/irText/types/javaWildcardType.kt +++ b/compiler/testData/ir/irText/types/javaWildcardType.kt @@ -1,8 +1,5 @@ // TARGET_BACKEND: JVM -// MUTE_SIGNATURE_COMPARISON_K2: ANY -// ^ KT-57754 - // FILE: javaWildcardType.kt interface K { fun kf1(): Collection diff --git a/compiler/testData/ir/irText/types/nullChecks/nullCheckOnInterfaceDelegation.kt b/compiler/testData/ir/irText/types/nullChecks/nullCheckOnInterfaceDelegation.kt index a028120e033..6cd10d8e3f9 100644 --- a/compiler/testData/ir/irText/types/nullChecks/nullCheckOnInterfaceDelegation.kt +++ b/compiler/testData/ir/irText/types/nullChecks/nullCheckOnInterfaceDelegation.kt @@ -1,8 +1,5 @@ // TARGET_BACKEND: JVM -// MUTE_SIGNATURE_COMPARISON_K2: ANY -// ^ KT-57754 - // MODULE: lib // FILE: A.java public class A {