From 525e6e53fef5035fb11dbaf84568310b92ff9d30 Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Wed, 26 Oct 2016 16:29:37 +0300 Subject: [PATCH] Do not report unhelpful diagnostic for unresolved call inside inline function #KT-14887 Fixed --- .../diagnostics/tests/inline/nonPublicMember/kt14887.kt | 8 ++++++++ .../diagnostics/tests/inline/nonPublicMember/kt14887.txt | 4 ++++ .../kotlin/checkers/DiagnosticsTestGenerated.java | 6 ++++++ .../src/org/jetbrains/kotlin/types/ErrorUtils.java | 4 ++-- 4 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 compiler/testData/diagnostics/tests/inline/nonPublicMember/kt14887.kt create mode 100644 compiler/testData/diagnostics/tests/inline/nonPublicMember/kt14887.txt diff --git a/compiler/testData/diagnostics/tests/inline/nonPublicMember/kt14887.kt b/compiler/testData/diagnostics/tests/inline/nonPublicMember/kt14887.kt new file mode 100644 index 00000000000..817af27886d --- /dev/null +++ b/compiler/testData/diagnostics/tests/inline/nonPublicMember/kt14887.kt @@ -0,0 +1,8 @@ +inline fun foo() { + unresolved().another + unresolved().another() +} + +fun main(args: Array) { + foo() +} diff --git a/compiler/testData/diagnostics/tests/inline/nonPublicMember/kt14887.txt b/compiler/testData/diagnostics/tests/inline/nonPublicMember/kt14887.txt new file mode 100644 index 00000000000..6756b166dc1 --- /dev/null +++ b/compiler/testData/diagnostics/tests/inline/nonPublicMember/kt14887.txt @@ -0,0 +1,4 @@ +package + +public inline fun foo(): kotlin.Unit +public fun main(/*0*/ args: kotlin.Array): kotlin.Unit diff --git a/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestGenerated.java index ca6c543b4c8..f5a05302e69 100644 --- a/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestGenerated.java @@ -10779,6 +10779,12 @@ public class DiagnosticsTestGenerated extends AbstractDiagnosticsTest { doTest(fileName); } + @TestMetadata("kt14887.kt") + public void testKt14887() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/inline/nonPublicMember/kt14887.kt"); + doTest(fileName); + } + @TestMetadata("localClass.kt") public void testLocalClass() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/inline/nonPublicMember/localClass.kt"); diff --git a/core/descriptors/src/org/jetbrains/kotlin/types/ErrorUtils.java b/core/descriptors/src/org/jetbrains/kotlin/types/ErrorUtils.java index bc6cc0a6692..107869eeeaf 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/types/ErrorUtils.java +++ b/core/descriptors/src/org/jetbrains/kotlin/types/ErrorUtils.java @@ -359,7 +359,7 @@ public class ErrorUtils { ERROR_CLASS, Annotations.Companion.getEMPTY(), Modality.OPEN, - Visibilities.INTERNAL, + Visibilities.PUBLIC, true, Name.special(""), CallableMemberDescriptor.Kind.DECLARATION, @@ -386,7 +386,7 @@ public class ErrorUtils { Collections.emptyList(), // TODO createErrorType(""), Modality.OPEN, - Visibilities.INTERNAL + Visibilities.PUBLIC ); return function; }