From 7ef13caa334a637f91ed22c879604a52a5c11831 Mon Sep 17 00:00:00 2001 From: Dmitriy Novozhilov Date: Tue, 12 Nov 2019 11:11:57 +0300 Subject: [PATCH] [FIR] Add test for ambiguity in nested class constructor call --- .../testData/resolve/nestedClassContructor.kt | 5 +++++ .../testData/resolve/nestedClassContructor.txt | 18 ++++++++++++++++++ .../fir/FirDiagnosticsTestGenerated.java | 5 +++++ 3 files changed, 28 insertions(+) create mode 100644 compiler/fir/resolve/testData/resolve/nestedClassContructor.kt create mode 100644 compiler/fir/resolve/testData/resolve/nestedClassContructor.txt diff --git a/compiler/fir/resolve/testData/resolve/nestedClassContructor.kt b/compiler/fir/resolve/testData/resolve/nestedClassContructor.kt new file mode 100644 index 00000000000..c7e56663279 --- /dev/null +++ b/compiler/fir/resolve/testData/resolve/nestedClassContructor.kt @@ -0,0 +1,5 @@ +class A() { + class B() : A() { + fun copy() = B() + } +} diff --git a/compiler/fir/resolve/testData/resolve/nestedClassContructor.txt b/compiler/fir/resolve/testData/resolve/nestedClassContructor.txt new file mode 100644 index 00000000000..0a630e1fcb4 --- /dev/null +++ b/compiler/fir/resolve/testData/resolve/nestedClassContructor.txt @@ -0,0 +1,18 @@ +FILE: nestedClassContructor.kt + public final class A : R|kotlin/Any| { + public constructor(): R|A| { + super() + } + + public final class B : R|A| { + public constructor(): R|A.B| { + super() + } + + public final fun copy(): { + ^copy #() + } + + } + + } 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 908a4b3835f..4c7224dede9 100644 --- a/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsTestGenerated.java +++ b/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsTestGenerated.java @@ -133,6 +133,11 @@ public class FirDiagnosticsTestGenerated extends AbstractFirDiagnosticsTest { runTest("compiler/fir/resolve/testData/resolve/nestedClass.kt"); } + @TestMetadata("nestedClassContructor.kt") + public void testNestedClassContructor() throws Exception { + runTest("compiler/fir/resolve/testData/resolve/nestedClassContructor.kt"); + } + @TestMetadata("NestedOfAliasedType.kt") public void testNestedOfAliasedType() throws Exception { runTest("compiler/fir/resolve/testData/resolve/NestedOfAliasedType.kt");