From 6a073e0b170f2681cc08565dd9c522f58aa6bbc6 Mon Sep 17 00:00:00 2001 From: Kirill Rakhman Date: Mon, 19 Jun 2023 10:40:12 +0200 Subject: [PATCH] [FIR] Fix duplicate spaces in FirPartialModifierRenderer --- .../fir/renderer/FirPartialModifierRenderer.kt | 12 ++++++------ .../cli/jvm/firMultiplatformCompilationWithError.out | 2 +- .../imports/EnumEntryVsStaticAmbiguity.fir.diag.txt | 2 +- .../imports/EnumEntryVsStaticAmbiguity3.fir.diag.txt | 2 +- .../inline/nonPublicMember/kt55179.fir.diag.txt | 2 +- .../tests/multiplatform/hmpp/kt57320.fir.kt | 2 +- 6 files changed, 11 insertions(+), 11 deletions(-) diff --git a/compiler/fir/tree/src/org/jetbrains/kotlin/fir/renderer/FirPartialModifierRenderer.kt b/compiler/fir/tree/src/org/jetbrains/kotlin/fir/renderer/FirPartialModifierRenderer.kt index db1818b0138..7059e2e982a 100644 --- a/compiler/fir/tree/src/org/jetbrains/kotlin/fir/renderer/FirPartialModifierRenderer.kt +++ b/compiler/fir/tree/src/org/jetbrains/kotlin/fir/renderer/FirPartialModifierRenderer.kt @@ -15,28 +15,28 @@ class FirPartialModifierRenderer : FirModifierRenderer() { renderModifier("expect") } if (memberDeclaration.isActual) { - renderModifier("actual ") + renderModifier("actual") } if (memberDeclaration.isStatic) { - renderModifier("static ") + renderModifier("static") } if (memberDeclaration.isInner) { - renderModifier("inner ") + renderModifier("inner") } // `companion/data/fun` modifiers are only valid for FirRegularClass, but we render them to make sure they are not // incorrectly loaded for other declarations during deserialization. if (memberDeclaration.status.isCompanion) { - renderModifier("companion ") + renderModifier("companion") } if (memberDeclaration.status.isData) { - renderModifier("data ") + renderModifier("data") } // All Java interfaces are considered `fun` (functional interfaces) for resolution purposes // (see JavaSymbolProvider.createFirJavaClass). Don't render `fun` for Java interfaces; it's not a modifier in Java. val isJavaInterface = memberDeclaration is FirRegularClass && memberDeclaration.classKind == ClassKind.INTERFACE && memberDeclaration.isJava if (memberDeclaration.status.isFun && !isJavaInterface) { - renderModifier("fun ") + renderModifier("fun") } if (memberDeclaration.isSuspend) { renderModifier("suspend") diff --git a/compiler/testData/cli/jvm/firMultiplatformCompilationWithError.out b/compiler/testData/cli/jvm/firMultiplatformCompilationWithError.out index 6f574e1d573..4a79fe7d260 100644 --- a/compiler/testData/cli/jvm/firMultiplatformCompilationWithError.out +++ b/compiler/testData/cli/jvm/firMultiplatformCompilationWithError.out @@ -9,7 +9,7 @@ as no stability/compatibility guarantees are given on compiler or generated code. Use it at your own risk! warning: language version 2.0 is experimental, there are no backwards compatibility guarantees for new language and library features -compiler/testData/cli/jvm/firMultiplatformCompilationWithError/jvm.kt:1:18: error: actual class 'actual interface A : Any' has no corresponding members for expected class members: +compiler/testData/cli/jvm/firMultiplatformCompilationWithError/jvm.kt:1:18: error: actual class 'actual interface A : Any' has no corresponding members for expected class members: expect fun foo(): Unit diff --git a/compiler/testData/diagnostics/tests/imports/EnumEntryVsStaticAmbiguity.fir.diag.txt b/compiler/testData/diagnostics/tests/imports/EnumEntryVsStaticAmbiguity.fir.diag.txt index 20ab8172afb..2e429e36938 100644 --- a/compiler/testData/diagnostics/tests/imports/EnumEntryVsStaticAmbiguity.fir.diag.txt +++ b/compiler/testData/diagnostics/tests/imports/EnumEntryVsStaticAmbiguity.fir.diag.txt @@ -1 +1 @@ -/test.kt:(154,158): error: Overload resolution ambiguity between candidates: [static field SOME: String = String(Some), static enum entry SOME: SomeEnum] +/test.kt:(154,158): error: Overload resolution ambiguity between candidates: [static field SOME: String = String(Some), static enum entry SOME: SomeEnum] diff --git a/compiler/testData/diagnostics/tests/imports/EnumEntryVsStaticAmbiguity3.fir.diag.txt b/compiler/testData/diagnostics/tests/imports/EnumEntryVsStaticAmbiguity3.fir.diag.txt index c5e8638141e..807716796a8 100644 --- a/compiler/testData/diagnostics/tests/imports/EnumEntryVsStaticAmbiguity3.fir.diag.txt +++ b/compiler/testData/diagnostics/tests/imports/EnumEntryVsStaticAmbiguity3.fir.diag.txt @@ -1 +1 @@ -/test.kt:(160,164): error: Overload resolution ambiguity between candidates: [static field SOME: String = String(Some), static enum entry SOME: SomeEnum] +/test.kt:(160,164): error: Overload resolution ambiguity between candidates: [static field SOME: String = String(Some), static enum entry SOME: SomeEnum] diff --git a/compiler/testData/diagnostics/tests/inline/nonPublicMember/kt55179.fir.diag.txt b/compiler/testData/diagnostics/tests/inline/nonPublicMember/kt55179.fir.diag.txt index 06fee06ad78..bb9ab2d32ab 100644 --- a/compiler/testData/diagnostics/tests/inline/nonPublicMember/kt55179.fir.diag.txt +++ b/compiler/testData/diagnostics/tests/inline/nonPublicMember/kt55179.fir.diag.txt @@ -2,6 +2,6 @@ /kt55179.fir.kt:(240,243): error: Non-private inline function 'fun foo(): Unit' cannot access members of private classes: 'constructor(): Foo' -/kt55179.fir.kt:(254,263): error: Non-private inline function 'fun foo(): Unit' cannot access members of private classes: 'companion object Companion : Any' +/kt55179.fir.kt:(254,263): error: Non-private inline function 'fun foo(): Unit' cannot access members of private classes: 'companion object Companion : Any' /kt55179.fir.kt:(272,280): error: Non-private inline function 'fun foo(): Unit' cannot access members of private classes: 'fun buildFoo(): Foo' diff --git a/compiler/testData/diagnostics/tests/multiplatform/hmpp/kt57320.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/hmpp/kt57320.fir.kt index 15a805de39d..cddb7c32c9e 100644 --- a/compiler/testData/diagnostics/tests/multiplatform/hmpp/kt57320.fir.kt +++ b/compiler/testData/diagnostics/tests/multiplatform/hmpp/kt57320.fir.kt @@ -34,7 +34,7 @@ interface KotlinXStringDemoInterface { // FILE: StringDemoInterface.kt actual typealias StringDemoInterface = KotlinXStringDemoInterface -; The following declaration is incompatible: expect fun StringDemoInterface.plusK(): String")!>actual fun StringDemoInterface.plusK() = StringValue(value).plus("K").value +; The following declaration is incompatible: expect fun StringDemoInterface.plusK(): String")!>actual fun StringDemoInterface.plusK() = StringValue(value).plus("K").value // FILE: main.kt class StringDemo(override val value: String) : StringDemoInterface