From 7921e64540d6e0e5ffcd7eeac25d5ee13212260f Mon Sep 17 00:00:00 2001 From: Nikolay Lunyak Date: Mon, 13 Sep 2021 19:22:30 +0300 Subject: [PATCH] [FIX] Add the ExplicitBackingFields language feature --- .../kotlin/test/runners/AbstractFirDiagnosticTest.kt | 7 +++++++ .../runners/codegen/AbstractBytecodeListingTest.kt | 7 +++++++ .../runners/codegen/AbstractFirBlackBoxCodegenTest.kt | 10 ++++++++++ .../kotlin/test/runners/ir/AbstractIrTextTest.kt | 7 +++++++ .../jetbrains/kotlin/config/LanguageVersionSettings.kt | 1 + 5 files changed, 32 insertions(+) diff --git a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/AbstractFirDiagnosticTest.kt b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/AbstractFirDiagnosticTest.kt index 177ed7d9e47..03f2220400e 100644 --- a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/AbstractFirDiagnosticTest.kt +++ b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/AbstractFirDiagnosticTest.kt @@ -17,6 +17,7 @@ import org.jetbrains.kotlin.test.directives.FirDiagnosticsDirectives.WITH_EXTEND import org.jetbrains.kotlin.test.directives.JvmEnvironmentConfigurationDirectives.JDK_KIND import org.jetbrains.kotlin.test.directives.JvmEnvironmentConfigurationDirectives.WITH_REFLECT import org.jetbrains.kotlin.test.directives.JvmEnvironmentConfigurationDirectives.WITH_STDLIB +import org.jetbrains.kotlin.test.directives.LanguageSettingsDirectives.LANGUAGE import org.jetbrains.kotlin.test.frontend.fir.FirFailingTestSuppressor import org.jetbrains.kotlin.test.frontend.fir.FirFrontendFacade import org.jetbrains.kotlin.test.frontend.fir.FirOutputArtifact @@ -123,4 +124,10 @@ fun TestConfigurationBuilder.baseFirDiagnosticTestConfiguration( +WITH_REFLECT } } + + forTestsMatching("compiler/fir/analysis-tests/testData/resolveWithStdlib/properties/backingField/*") { + defaultDirectives { + LANGUAGE with "+ExplicitBackingFields" + } + } } diff --git a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/codegen/AbstractBytecodeListingTest.kt b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/codegen/AbstractBytecodeListingTest.kt index c6ab2fed6e1..cddc5fc9282 100644 --- a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/codegen/AbstractBytecodeListingTest.kt +++ b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/runners/codegen/AbstractBytecodeListingTest.kt @@ -16,6 +16,7 @@ import org.jetbrains.kotlin.test.backend.ir.JvmIrBackendFacade import org.jetbrains.kotlin.test.builders.TestConfigurationBuilder import org.jetbrains.kotlin.test.builders.configureJvmArtifactsHandlersStep import org.jetbrains.kotlin.test.directives.CodegenTestDirectives +import org.jetbrains.kotlin.test.directives.LanguageSettingsDirectives import org.jetbrains.kotlin.test.runners.AbstractKotlinCompilerWithTargetBackendTest import org.jetbrains.kotlin.test.frontend.classic.* import org.jetbrains.kotlin.test.frontend.fir.Fir2IrResultsConverter @@ -44,6 +45,12 @@ abstract class AbstractBytecodeListingTestBase() ::FirIrDumpIdenticalChecker, ::BlackBoxCodegenSuppressor ) + + forTestsMatching("compiler/fir/fir2ir/testData/ir/irText/properties/backingField/*") { + defaultDirectives { + LanguageSettingsDirectives.LANGUAGE with "+ExplicitBackingFields" + } + } } } } diff --git a/compiler/util/src/org/jetbrains/kotlin/config/LanguageVersionSettings.kt b/compiler/util/src/org/jetbrains/kotlin/config/LanguageVersionSettings.kt index e4e8074f078..8046ab0c0e3 100644 --- a/compiler/util/src/org/jetbrains/kotlin/config/LanguageVersionSettings.kt +++ b/compiler/util/src/org/jetbrains/kotlin/config/LanguageVersionSettings.kt @@ -246,6 +246,7 @@ enum class LanguageFeature( MultiPlatformProjects(sinceVersion = null, defaultState = State.DISABLED), InlineClasses(KOTLIN_1_3, defaultState = State.ENABLED_WITH_WARNING, kind = UNSTABLE_FEATURE), ProhibitComparisonOfIncompatibleClasses(sinceVersion = null, kind = BUG_FIX, defaultState = State.DISABLED), + ExplicitBackingFields(sinceVersion = null, defaultState = State.DISABLED, kind = UNSTABLE_FEATURE), ;