From 2d308e7c270ca1b806b16dd37202a816f255d328 Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Tue, 24 Oct 2023 22:48:55 +0200 Subject: [PATCH] CLI: remove obsolete language feature arguments These arguments switch language features which cannot be disabled anymore because they're enabled from some LV not later than 1.4, and the minimal supported LV is currently 1.4. --- .../CommonCompilerArgumentsCopyGenerated.kt | 4 -- .../arguments/CommonCompilerArguments.kt | 57 ------------------- compiler/testData/cli/js/jsExtraHelp.out | 4 -- compiler/testData/cli/jvm/extraHelp.out | 4 -- .../cli/jvm/useMixedNamedArgumentsFlag.args | 5 -- .../cli/jvm/useMixedNamedArgumentsFlag.kt | 5 -- .../cli/jvm/useMixedNamedArgumentsFlag.out | 1 - .../kotlin/cli/CliTestGenerated.java | 5 -- .../CompilerArgumentsContentProspectorTest.kt | 4 -- 9 files changed, 89 deletions(-) delete mode 100644 compiler/testData/cli/jvm/useMixedNamedArgumentsFlag.args delete mode 100644 compiler/testData/cli/jvm/useMixedNamedArgumentsFlag.kt delete mode 100644 compiler/testData/cli/jvm/useMixedNamedArgumentsFlag.out diff --git a/compiler/cli/cli-common/gen/org/jetbrains/kotlin/cli/common/arguments/CommonCompilerArgumentsCopyGenerated.kt b/compiler/cli/cli-common/gen/org/jetbrains/kotlin/cli/common/arguments/CommonCompilerArgumentsCopyGenerated.kt index 21bccdb3e40..5b742c2da65 100644 --- a/compiler/cli/cli-common/gen/org/jetbrains/kotlin/cli/common/arguments/CommonCompilerArgumentsCopyGenerated.kt +++ b/compiler/cli/cli-common/gen/org/jetbrains/kotlin/cli/common/arguments/CommonCompilerArgumentsCopyGenerated.kt @@ -26,7 +26,6 @@ fun copyCommonCompilerArguments(from: CommonCompilerArguments, to: CommonCompile to.dumpDirectory = from.dumpDirectory to.dumpOnlyFqName = from.dumpOnlyFqName to.dumpPerf = from.dumpPerf - to.effectSystem = from.effectSystem to.enableBuilderInference = from.enableBuilderInference to.enableSignatureClashChecks = from.enableSignatureClashChecks to.expectActualClasses = from.expectActualClasses @@ -64,8 +63,6 @@ fun copyCommonCompilerArguments(from: CommonCompilerArguments, to: CommonCompile to.pluginOptions = from.pluginOptions?.copyOf() to.profilePhases = from.profilePhases to.progressiveMode = from.progressiveMode - to.properIeee754Comparisons = from.properIeee754Comparisons - to.readDeserializedContracts = from.readDeserializedContracts to.relativePathBases = from.relativePathBases?.copyOf() to.renderInternalDiagnosticNames = from.renderInternalDiagnosticNames to.reportOutputFiles = from.reportOutputFiles @@ -82,7 +79,6 @@ fun copyCommonCompilerArguments(from: CommonCompilerArguments, to: CommonCompile to.useFirLT = from.useFirLT to.useIrFakeOverrideBuilder = from.useIrFakeOverrideBuilder to.useK2 = from.useK2 - to.useMixedNamedArguments = from.useMixedNamedArguments to.verbosePhases = from.verbosePhases?.copyOf() return to diff --git a/compiler/cli/cli-common/src/org/jetbrains/kotlin/cli/common/arguments/CommonCompilerArguments.kt b/compiler/cli/cli-common/src/org/jetbrains/kotlin/cli/common/arguments/CommonCompilerArguments.kt index 50ec4872192..4166382445b 100644 --- a/compiler/cli/cli-common/src/org/jetbrains/kotlin/cli/common/arguments/CommonCompilerArguments.kt +++ b/compiler/cli/cli-common/src/org/jetbrains/kotlin/cli/common/arguments/CommonCompilerArguments.kt @@ -251,26 +251,6 @@ progressive mode enabled may cause compilation errors in progressive mode.""" field = value } - @Argument( - value = "-Xeffect-system", - description = "Enable experimental language feature: effect system." - ) - var effectSystem = false - set(value) { - checkFrozen() - field = value - } - - @Argument( - value = "-Xread-deserialized-contracts", - description = "Enable reading contracts from metadata." - ) - var readDeserializedContracts = false - set(value) { - checkFrozen() - field = value - } - @IDEAPluginsCompatibilityAPI( IDEAPlatforms._212, // maybe 211 AS used it too IDEAPlatforms._213, @@ -291,16 +271,6 @@ progressive mode enabled may cause compilation errors in progressive mode.""" field = value } - @Argument( - value = "-Xproper-ieee754-comparisons", - description = "Generate proper IEEE 754 comparisons in all cases if values are statically known to be of primitive numeric types." - ) - var properIeee754Comparisons = false - set(value) { - checkFrozen() - field = value - } - @Argument(value = "-Xreport-perf", description = "Report detailed performance statistics.") var reportPerf = false set(value) { @@ -542,16 +512,6 @@ They should be a subset of sources passed as free arguments.""" field = value } - @Argument( - value = "-Xuse-mixed-named-arguments", - description = "Allow mixing named and unnamed arguments when the arguments appear in their default order." - ) - var useMixedNamedArguments = false - set(value) { - checkFrozen() - field = value - } - @Argument( value = "-Xmetadata-klib", description = "Produce a klib that only contains the metadata of declarations.", @@ -840,23 +800,6 @@ The corresponding calls' declarations may not be marked with @BuilderInference." put(LanguageFeature.SoundSmartCastsAfterTry, LanguageFeature.State.DISABLED) } - if (effectSystem) { - put(LanguageFeature.UseCallsInPlaceEffect, LanguageFeature.State.ENABLED) - put(LanguageFeature.UseReturnsEffect, LanguageFeature.State.ENABLED) - } - - if (readDeserializedContracts) { - put(LanguageFeature.ReadDeserializedContracts, LanguageFeature.State.ENABLED) - } - - if (properIeee754Comparisons) { - put(LanguageFeature.ProperIeee754Comparisons, LanguageFeature.State.ENABLED) - } - - if (useMixedNamedArguments) { - put(LanguageFeature.MixedNamedArgumentsInTheirOwnPosition, LanguageFeature.State.ENABLED) - } - if (inferenceCompatibility) { put(LanguageFeature.InferenceCompatibility, LanguageFeature.State.ENABLED) } diff --git a/compiler/testData/cli/js/jsExtraHelp.out b/compiler/testData/cli/js/jsExtraHelp.out index a433b8bbe83..53a324901b9 100644 --- a/compiler/testData/cli/js/jsExtraHelp.out +++ b/compiler/testData/cli/js/jsExtraHelp.out @@ -83,7 +83,6 @@ where advanced options include: -Xdump-directory Dump the backend state into this directory. -Xdump-fqname Dump the declaration with the given FqName. -Xdump-perf= Dump detailed performance statistics to the specified file. - -Xeffect-system Enable experimental language feature: effect system. -Xenable-builder-inference Use builder inference by default for all calls with lambdas that can't be resolved without it. The corresponding calls' declarations may not be marked with @BuilderInference. -Xklib-enable-signature-clash-checks @@ -126,8 +125,6 @@ where advanced options include: -Xcompiler-plugin=,:=,= Register a compiler plugin. -Xprofile-phases Profile backend phases. - -Xproper-ieee754-comparisons Generate proper IEEE 754 comparisons in all cases if values are statically known to be of primitive numeric types. - -Xread-deserialized-contracts Enable reading contracts from metadata. -Xklib-relative-path-base Provide a base path to compute the source's relative paths in klib (default is empty). -Xrender-internal-diagnostic-names Render the internal names of warnings and errors. @@ -146,7 +143,6 @@ where advanced options include: -Xuse-fir-lt Compile using the LightTree parser with the frontend IR. -Xuse-ir-fake-override-builder Generate fake overrides via IR. See KT-61514 -Xuse-k2 Compile using the experimental K2 compiler pipeline. No compatibility guarantees are provided yet. - -Xuse-mixed-named-arguments Allow mixing named and unnamed arguments when the arguments appear in their default order. -Xverbose-phases Be verbose while performing the given backend phases. Advanced options are non-standard and may be changed or removed without any notice. diff --git a/compiler/testData/cli/jvm/extraHelp.out b/compiler/testData/cli/jvm/extraHelp.out index 295cf07f9d1..64b1d2b77e6 100644 --- a/compiler/testData/cli/jvm/extraHelp.out +++ b/compiler/testData/cli/jvm/extraHelp.out @@ -170,7 +170,6 @@ where advanced options include: -Xdump-directory Dump the backend state into this directory. -Xdump-fqname Dump the declaration with the given FqName. -Xdump-perf= Dump detailed performance statistics to the specified file. - -Xeffect-system Enable experimental language feature: effect system. -Xenable-builder-inference Use builder inference by default for all calls with lambdas that can't be resolved without it. The corresponding calls' declarations may not be marked with @BuilderInference. -Xklib-enable-signature-clash-checks @@ -213,8 +212,6 @@ where advanced options include: -Xcompiler-plugin=,:=,= Register a compiler plugin. -Xprofile-phases Profile backend phases. - -Xproper-ieee754-comparisons Generate proper IEEE 754 comparisons in all cases if values are statically known to be of primitive numeric types. - -Xread-deserialized-contracts Enable reading contracts from metadata. -Xklib-relative-path-base Provide a base path to compute the source's relative paths in klib (default is empty). -Xrender-internal-diagnostic-names Render the internal names of warnings and errors. @@ -233,7 +230,6 @@ where advanced options include: -Xuse-fir-lt Compile using the LightTree parser with the frontend IR. -Xuse-ir-fake-override-builder Generate fake overrides via IR. See KT-61514 -Xuse-k2 Compile using the experimental K2 compiler pipeline. No compatibility guarantees are provided yet. - -Xuse-mixed-named-arguments Allow mixing named and unnamed arguments when the arguments appear in their default order. -Xverbose-phases Be verbose while performing the given backend phases. Advanced options are non-standard and may be changed or removed without any notice. diff --git a/compiler/testData/cli/jvm/useMixedNamedArgumentsFlag.args b/compiler/testData/cli/jvm/useMixedNamedArgumentsFlag.args deleted file mode 100644 index 8a9f459b98f..00000000000 --- a/compiler/testData/cli/jvm/useMixedNamedArgumentsFlag.args +++ /dev/null @@ -1,5 +0,0 @@ -$TESTDATA_DIR$/useMixedNamedArgumentsFlag.kt --Xuse-mixed-named-arguments --Xnew-inference --d -$TEMP_DIR$ diff --git a/compiler/testData/cli/jvm/useMixedNamedArgumentsFlag.kt b/compiler/testData/cli/jvm/useMixedNamedArgumentsFlag.kt deleted file mode 100644 index a1901cd6da7..00000000000 --- a/compiler/testData/cli/jvm/useMixedNamedArgumentsFlag.kt +++ /dev/null @@ -1,5 +0,0 @@ -fun foo(x: Int, y: Int, z: Int): Int = x + y + z - -fun test() { - foo(1, y = 2, 3) -} diff --git a/compiler/testData/cli/jvm/useMixedNamedArgumentsFlag.out b/compiler/testData/cli/jvm/useMixedNamedArgumentsFlag.out deleted file mode 100644 index d86bac9de59..00000000000 --- a/compiler/testData/cli/jvm/useMixedNamedArgumentsFlag.out +++ /dev/null @@ -1 +0,0 @@ -OK diff --git a/compiler/tests-gen/org/jetbrains/kotlin/cli/CliTestGenerated.java b/compiler/tests-gen/org/jetbrains/kotlin/cli/CliTestGenerated.java index c6b0ed9cde6..6f13708b088 100644 --- a/compiler/tests-gen/org/jetbrains/kotlin/cli/CliTestGenerated.java +++ b/compiler/tests-gen/org/jetbrains/kotlin/cli/CliTestGenerated.java @@ -1195,11 +1195,6 @@ public class CliTestGenerated extends AbstractCliTest { runTest("compiler/testData/cli/jvm/useDeclarationThatWasExperimentalWithoutMarker.args"); } - @TestMetadata("useMixedNamedArgumentsFlag.args") - public void testUseMixedNamedArgumentsFlag() throws Exception { - runTest("compiler/testData/cli/jvm/useMixedNamedArgumentsFlag.args"); - } - @TestMetadata("warningJdkWithNoJdk.args") public void testWarningJdkWithNoJdk() throws Exception { runTest("compiler/testData/cli/jvm/warningJdkWithNoJdk.args"); diff --git a/jps/jps-common/test/CompilerArgumentsContentProspectorTest.kt b/jps/jps-common/test/CompilerArgumentsContentProspectorTest.kt index d723d366f47..40db8612f34 100644 --- a/jps/jps-common/test/CompilerArgumentsContentProspectorTest.kt +++ b/jps/jps-common/test/CompilerArgumentsContentProspectorTest.kt @@ -89,9 +89,6 @@ class CompilerArgumentsContentProspectorTest { CommonCompilerArguments::newInference, CommonCompilerArguments::inlineClasses, CommonCompilerArguments::legacySmartCastAfterTry, - CommonCompilerArguments::effectSystem, - CommonCompilerArguments::readDeserializedContracts, - CommonCompilerArguments::properIeee754Comparisons, CommonCompilerArguments::reportPerf, CommonCompilerArguments::listPhases, CommonCompilerArguments::profilePhases, @@ -99,7 +96,6 @@ class CompilerArgumentsContentProspectorTest { CommonCompilerArguments::checkStickyPhaseConditions, CommonCompilerArguments::useK2, CommonCompilerArguments::useFirExtendedCheckers, - CommonCompilerArguments::useMixedNamedArguments, CommonCompilerArguments::metadataKlib, CommonCompilerArguments::extendedCompilerChecks, CommonCompilerArguments::disableDefaultScriptingPlugin,