From ce02cd47295100e0aceb46abbf00503b23abd14e Mon Sep 17 00:00:00 2001 From: Victor Petukhov Date: Mon, 6 Sep 2021 18:46:38 +0300 Subject: [PATCH] Enable suspend conversions by default in 1.6 ^KT-48618 Fixed --- .../FirBlackBoxCodegenTestGenerated.java | 6 +++++ .../basicSuspendConversionDefault.kt | 27 +++++++++++++++++++ .../codegen/BlackBoxCodegenTestGenerated.java | 6 +++++ .../IrBlackBoxCodegenTestGenerated.java | 6 +++++ .../LightAnalysisModeTestGenerated.java | 5 ++++ .../kotlin/config/LanguageVersionSettings.kt | 2 +- .../IrJsCodegenBoxES6TestGenerated.java | 5 ++++ .../IrJsCodegenBoxTestGenerated.java | 5 ++++ .../semantics/JsCodegenBoxTestGenerated.java | 5 ++++ .../IrCodegenBoxWasmTestGenerated.java | 5 ++++ 10 files changed, 71 insertions(+), 1 deletion(-) create mode 100644 compiler/testData/codegen/box/suspendConversion/basicSuspendConversionDefault.kt diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirBlackBoxCodegenTestGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirBlackBoxCodegenTestGenerated.java index 0edd2866660..e38c6951323 100644 --- a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirBlackBoxCodegenTestGenerated.java +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirBlackBoxCodegenTestGenerated.java @@ -41576,6 +41576,12 @@ public class FirBlackBoxCodegenTestGenerated extends AbstractFirBlackBoxCodegenT runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversion.kt"); } + @Test + @TestMetadata("basicSuspendConversionDefault.kt") + public void testBasicSuspendConversionDefault() throws Exception { + runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversionDefault.kt"); + } + @Test @TestMetadata("basicSuspendConversionForCallableReference.kt") public void testBasicSuspendConversionForCallableReference() throws Exception { diff --git a/compiler/testData/codegen/box/suspendConversion/basicSuspendConversionDefault.kt b/compiler/testData/codegen/box/suspendConversion/basicSuspendConversionDefault.kt new file mode 100644 index 00000000000..b56c17c0fca --- /dev/null +++ b/compiler/testData/codegen/box/suspendConversion/basicSuspendConversionDefault.kt @@ -0,0 +1,27 @@ +// IGNORE_BACKEND: JVM +// IGNORE_BACKEND: WASM + +// !DIAGNOSTICS: -UNUSED_PARAMETER + +fun foo1(f: suspend () -> String) {} +fun foo2(f: suspend (Int) -> String) {} +fun foo3(f: suspend () -> Unit) {} + +fun test( + f0: suspend () -> String, + f1: () -> String, + f2: (Int) -> String, + f3: () -> Unit, +) { + foo1 { "str" } + foo1(f0) + + foo1(f1) + foo2(f2) + foo3(f3) +} + +fun box(): String { + test({ "" }, { "" }, { it.toString() }, {}) + return "OK" +} diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java index 0944faff23a..38cfb7bfe01 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java @@ -41426,6 +41426,12 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest { runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversion.kt"); } + @Test + @TestMetadata("basicSuspendConversionDefault.kt") + public void testBasicSuspendConversionDefault() throws Exception { + runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversionDefault.kt"); + } + @Test @TestMetadata("basicSuspendConversionForCallableReference.kt") public void testBasicSuspendConversionForCallableReference() throws Exception { diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java index 292ff0fadb5..db783ffa08a 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java @@ -41576,6 +41576,12 @@ public class IrBlackBoxCodegenTestGenerated extends AbstractIrBlackBoxCodegenTes runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversion.kt"); } + @Test + @TestMetadata("basicSuspendConversionDefault.kt") + public void testBasicSuspendConversionDefault() throws Exception { + runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversionDefault.kt"); + } + @Test @TestMetadata("basicSuspendConversionForCallableReference.kt") public void testBasicSuspendConversionForCallableReference() throws Exception { diff --git a/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java b/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java index 3f128d0ea16..b364f44b843 100644 --- a/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java +++ b/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java @@ -33294,6 +33294,11 @@ public class LightAnalysisModeTestGenerated extends AbstractLightAnalysisModeTes runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversion.kt"); } + @TestMetadata("basicSuspendConversionDefault.kt") + public void ignoreBasicSuspendConversionDefault() throws Exception { + runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversionDefault.kt"); + } + @TestMetadata("basicSuspendConversionGenerics.kt") public void ignoreBasicSuspendConversionGenerics() throws Exception { runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversionGenerics.kt"); diff --git a/compiler/util/src/org/jetbrains/kotlin/config/LanguageVersionSettings.kt b/compiler/util/src/org/jetbrains/kotlin/config/LanguageVersionSettings.kt index a2151d7c907..e4e8074f078 100644 --- a/compiler/util/src/org/jetbrains/kotlin/config/LanguageVersionSettings.kt +++ b/compiler/util/src/org/jetbrains/kotlin/config/LanguageVersionSettings.kt @@ -143,7 +143,6 @@ enum class LanguageFeature( SamConversionForKotlinFunctions(KOTLIN_1_4), SamConversionPerArgument(KOTLIN_1_4), FunctionReferenceWithDefaultValueAsOtherType(KOTLIN_1_4), - SuspendConversion(KOTLIN_1_4, defaultState = State.DISABLED), UnitConversion(KOTLIN_1_4, defaultState = State.DISABLED), OverloadResolutionByLambdaReturnType(KOTLIN_1_4), ContractsOnCallsWithImplicitReceiver(KOTLIN_1_4), @@ -215,6 +214,7 @@ enum class LanguageFeature( RepeatableAnnotations(KOTLIN_1_6), RepeatableAnnotationContainerConstraints(KOTLIN_1_6, kind = BUG_FIX), UseBuilderInferenceOnlyIfNeeded(KOTLIN_1_6), + SuspendConversion(KOTLIN_1_6), // 1.7 diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/es6/semantics/IrJsCodegenBoxES6TestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/es6/semantics/IrJsCodegenBoxES6TestGenerated.java index 6cf82796228..e87196b9c53 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/es6/semantics/IrJsCodegenBoxES6TestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/es6/semantics/IrJsCodegenBoxES6TestGenerated.java @@ -27857,6 +27857,11 @@ public class IrJsCodegenBoxES6TestGenerated extends AbstractIrJsCodegenBoxES6Tes runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversion.kt"); } + @TestMetadata("basicSuspendConversionDefault.kt") + public void testBasicSuspendConversionDefault() throws Exception { + runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversionDefault.kt"); + } + @TestMetadata("basicSuspendConversionForCallableReference.kt") public void testBasicSuspendConversionForCallableReference() throws Exception { runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversionForCallableReference.kt"); diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/semantics/IrJsCodegenBoxTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/semantics/IrJsCodegenBoxTestGenerated.java index 561fbff7210..db83a13d72e 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/semantics/IrJsCodegenBoxTestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/semantics/IrJsCodegenBoxTestGenerated.java @@ -27263,6 +27263,11 @@ public class IrJsCodegenBoxTestGenerated extends AbstractIrJsCodegenBoxTest { runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversion.kt"); } + @TestMetadata("basicSuspendConversionDefault.kt") + public void testBasicSuspendConversionDefault() throws Exception { + runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversionDefault.kt"); + } + @TestMetadata("basicSuspendConversionForCallableReference.kt") public void testBasicSuspendConversionForCallableReference() throws Exception { runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversionForCallableReference.kt"); diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java index d7bbe9bc0b0..8d796efbccb 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java @@ -27203,6 +27203,11 @@ public class JsCodegenBoxTestGenerated extends AbstractJsCodegenBoxTest { runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversion.kt"); } + @TestMetadata("basicSuspendConversionDefault.kt") + public void testBasicSuspendConversionDefault() throws Exception { + runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversionDefault.kt"); + } + @TestMetadata("basicSuspendConversionForCallableReference.kt") public void testBasicSuspendConversionForCallableReference() throws Exception { runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversionForCallableReference.kt"); diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/wasm/semantics/IrCodegenBoxWasmTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/wasm/semantics/IrCodegenBoxWasmTestGenerated.java index 70ab4e14b9a..f82b1e8bd13 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/wasm/semantics/IrCodegenBoxWasmTestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/wasm/semantics/IrCodegenBoxWasmTestGenerated.java @@ -15248,6 +15248,11 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversion.kt"); } + @TestMetadata("basicSuspendConversionDefault.kt") + public void testBasicSuspendConversionDefault() throws Exception { + runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversionDefault.kt"); + } + @TestMetadata("basicSuspendConversionForCallableReference.kt") public void testBasicSuspendConversionForCallableReference() throws Exception { runTest("compiler/testData/codegen/box/suspendConversion/basicSuspendConversionForCallableReference.kt");