From 089222cecc6166794cb73736297da39c3ec5f556 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Sat, 15 Apr 2023 11:34:14 +0200 Subject: [PATCH] K2: reproduce KT-57880 --- ...nosticCompilerTestFE10TestdataTestGenerated.java | 6 ++++++ ...DiagnosticCompilerFE10TestDataTestGenerated.java | 6 ++++++ ...ightTreeOldFrontendDiagnosticsTestGenerated.java | 6 ++++++ .../FirPsiOldFrontendDiagnosticsTestGenerated.java | 6 ++++++ .../tests/labels/labelToOuterLambda.fir.kt | 13 +++++++++++++ .../diagnostics/tests/labels/labelToOuterLambda.kt | 13 +++++++++++++ .../test/runners/DiagnosticTestGenerated.java | 6 ++++++ 7 files changed, 56 insertions(+) create mode 100644 compiler/testData/diagnostics/tests/labels/labelToOuterLambda.fir.kt create mode 100644 compiler/testData/diagnostics/tests/labels/labelToOuterLambda.kt diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java index 87addaaa10c..7238e2d09ca 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java @@ -21032,6 +21032,12 @@ public class DiagnosticCompilerTestFE10TestdataTestGenerated extends AbstractDia runTest("compiler/testData/diagnostics/tests/labels/labelReferencesInsideObjectExpressions.kt"); } + @Test + @TestMetadata("labelToOuterLambda.kt") + public void testLabelToOuterLambda() throws Exception { + runTest("compiler/testData/diagnostics/tests/labels/labelToOuterLambda.kt"); + } + @Test @TestMetadata("labeledFunctionLiteral.kt") public void testLabeledFunctionLiteral() throws Exception { diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java index 65e5b56204c..1e90d730b88 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java @@ -21032,6 +21032,12 @@ public class LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated runTest("compiler/testData/diagnostics/tests/labels/labelReferencesInsideObjectExpressions.kt"); } + @Test + @TestMetadata("labelToOuterLambda.kt") + public void testLabelToOuterLambda() throws Exception { + runTest("compiler/testData/diagnostics/tests/labels/labelToOuterLambda.kt"); + } + @Test @TestMetadata("labeledFunctionLiteral.kt") public void testLabeledFunctionLiteral() throws Exception { diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeOldFrontendDiagnosticsTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeOldFrontendDiagnosticsTestGenerated.java index 3cd5b461093..cccb0d8c962 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeOldFrontendDiagnosticsTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeOldFrontendDiagnosticsTestGenerated.java @@ -21032,6 +21032,12 @@ public class FirLightTreeOldFrontendDiagnosticsTestGenerated extends AbstractFir runTest("compiler/testData/diagnostics/tests/labels/labelReferencesInsideObjectExpressions.kt"); } + @Test + @TestMetadata("labelToOuterLambda.kt") + public void testLabelToOuterLambda() throws Exception { + runTest("compiler/testData/diagnostics/tests/labels/labelToOuterLambda.kt"); + } + @Test @TestMetadata("labeledFunctionLiteral.kt") public void testLabeledFunctionLiteral() throws Exception { diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirPsiOldFrontendDiagnosticsTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirPsiOldFrontendDiagnosticsTestGenerated.java index 432dbd31c86..fe53e4ca0f8 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirPsiOldFrontendDiagnosticsTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirPsiOldFrontendDiagnosticsTestGenerated.java @@ -21038,6 +21038,12 @@ public class FirPsiOldFrontendDiagnosticsTestGenerated extends AbstractFirPsiDia runTest("compiler/testData/diagnostics/tests/labels/labelReferencesInsideObjectExpressions.kt"); } + @Test + @TestMetadata("labelToOuterLambda.kt") + public void testLabelToOuterLambda() throws Exception { + runTest("compiler/testData/diagnostics/tests/labels/labelToOuterLambda.kt"); + } + @Test @TestMetadata("labeledFunctionLiteral.kt") public void testLabeledFunctionLiteral() throws Exception { diff --git a/compiler/testData/diagnostics/tests/labels/labelToOuterLambda.fir.kt b/compiler/testData/diagnostics/tests/labels/labelToOuterLambda.fir.kt new file mode 100644 index 00000000000..2d129f322d8 --- /dev/null +++ b/compiler/testData/diagnostics/tests/labels/labelToOuterLambda.fir.kt @@ -0,0 +1,13 @@ +// ISSUE: KT-57880 + +fun outerLambda(action: String.() -> Unit) {} +var lambda: Int.() -> Unit = {} +fun consume(arg: String) {} + +fun main() { + outerLambda { + lambda = { + consume(this@outerLambda) + } + } +} diff --git a/compiler/testData/diagnostics/tests/labels/labelToOuterLambda.kt b/compiler/testData/diagnostics/tests/labels/labelToOuterLambda.kt new file mode 100644 index 00000000000..2d29bf1935f --- /dev/null +++ b/compiler/testData/diagnostics/tests/labels/labelToOuterLambda.kt @@ -0,0 +1,13 @@ +// ISSUE: KT-57880 + +fun outerLambda(action: String.() -> Unit) {} +var lambda: Int.() -> Unit = {} +fun consume(arg: String) {} + +fun main() { + outerLambda { + lambda = { + consume(this@outerLambda) + } + } +} diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java index 0352f2c83a6..cc2e8b9bc74 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java @@ -21038,6 +21038,12 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest { runTest("compiler/testData/diagnostics/tests/labels/labelReferencesInsideObjectExpressions.kt"); } + @Test + @TestMetadata("labelToOuterLambda.kt") + public void testLabelToOuterLambda() throws Exception { + runTest("compiler/testData/diagnostics/tests/labels/labelToOuterLambda.kt"); + } + @Test @TestMetadata("labeledFunctionLiteral.kt") public void testLabeledFunctionLiteral() throws Exception {