From 0b377c103ad88a7c6cd8ba687c86d3a8695f4208 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Thu, 30 Jan 2020 16:27:10 +0300 Subject: [PATCH] Add FIR problematic test (safe extension invoke) --- .../resolve/expresssions/invoke/extensionSafeCall.kt | 4 ++++ .../resolve/expresssions/invoke/extensionSafeCall.txt | 5 +++++ .../jetbrains/kotlin/fir/FirDiagnosticsTestGenerated.java | 5 +++++ .../kotlin/fir/FirDiagnosticsWithLightTreeTestGenerated.java | 5 +++++ 4 files changed, 19 insertions(+) create mode 100644 compiler/fir/resolve/testData/resolve/expresssions/invoke/extensionSafeCall.kt create mode 100644 compiler/fir/resolve/testData/resolve/expresssions/invoke/extensionSafeCall.txt diff --git a/compiler/fir/resolve/testData/resolve/expresssions/invoke/extensionSafeCall.kt b/compiler/fir/resolve/testData/resolve/expresssions/invoke/extensionSafeCall.kt new file mode 100644 index 00000000000..b71ebf7c011 --- /dev/null +++ b/compiler/fir/resolve/testData/resolve/expresssions/invoke/extensionSafeCall.kt @@ -0,0 +1,4 @@ +fun bar(doIt: Int.() -> Int) { + val i: Int? = 1 + i?.doIt() +} diff --git a/compiler/fir/resolve/testData/resolve/expresssions/invoke/extensionSafeCall.txt b/compiler/fir/resolve/testData/resolve/expresssions/invoke/extensionSafeCall.txt new file mode 100644 index 00000000000..acb04e5d86e --- /dev/null +++ b/compiler/fir/resolve/testData/resolve/expresssions/invoke/extensionSafeCall.txt @@ -0,0 +1,5 @@ +FILE: extensionSafeCall.kt + public final fun bar(doIt: R|kotlin/Int.() -> kotlin/Int|): R|kotlin/Unit| { + lval i: R|kotlin/Int?| = Int(1) + R|/i|?.#() + } diff --git a/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsTestGenerated.java b/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsTestGenerated.java index 8b867066c2b..df3fd3f0a2a 100644 --- a/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsTestGenerated.java +++ b/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsTestGenerated.java @@ -774,6 +774,11 @@ public class FirDiagnosticsTestGenerated extends AbstractFirDiagnosticsTest { runTest("compiler/fir/resolve/testData/resolve/expresssions/invoke/extensionOnObject.kt"); } + @TestMetadata("extensionSafeCall.kt") + public void testExtensionSafeCall() throws Exception { + runTest("compiler/fir/resolve/testData/resolve/expresssions/invoke/extensionSafeCall.kt"); + } + @TestMetadata("farInvokeExtension.kt") public void testFarInvokeExtension() throws Exception { runTest("compiler/fir/resolve/testData/resolve/expresssions/invoke/farInvokeExtension.kt"); diff --git a/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsWithLightTreeTestGenerated.java b/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsWithLightTreeTestGenerated.java index 399cb78f634..fff453285a7 100644 --- a/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsWithLightTreeTestGenerated.java +++ b/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsWithLightTreeTestGenerated.java @@ -774,6 +774,11 @@ public class FirDiagnosticsWithLightTreeTestGenerated extends AbstractFirDiagnos runTest("compiler/fir/resolve/testData/resolve/expresssions/invoke/extensionOnObject.kt"); } + @TestMetadata("extensionSafeCall.kt") + public void testExtensionSafeCall() throws Exception { + runTest("compiler/fir/resolve/testData/resolve/expresssions/invoke/extensionSafeCall.kt"); + } + @TestMetadata("farInvokeExtension.kt") public void testFarInvokeExtension() throws Exception { runTest("compiler/fir/resolve/testData/resolve/expresssions/invoke/farInvokeExtension.kt");