From 660ac8d63cc3505ff78234193d9dde8e66265f35 Mon Sep 17 00:00:00 2001 From: Valentin Kipyatkov Date: Wed, 18 Feb 2015 21:10:56 +0300 Subject: [PATCH] Fixed bug --- .../kotlin/idea/imports/KotlinImportOptimizer.kt | 2 +- .../editor/optimizeImports/NestedClassInObject.kt | 11 +++++++++++ .../optimizeImports/NestedClassInObject.kt.after | 9 +++++++++ .../idea/imports/OptimizeImportsTestGenerated.java | 6 ++++++ 4 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 idea/testData/editor/optimizeImports/NestedClassInObject.kt create mode 100644 idea/testData/editor/optimizeImports/NestedClassInObject.kt.after diff --git a/idea/src/org/jetbrains/kotlin/idea/imports/KotlinImportOptimizer.kt b/idea/src/org/jetbrains/kotlin/idea/imports/KotlinImportOptimizer.kt index 008641735d0..3af3e1bea45 100644 --- a/idea/src/org/jetbrains/kotlin/idea/imports/KotlinImportOptimizer.kt +++ b/idea/src/org/jetbrains/kotlin/idea/imports/KotlinImportOptimizer.kt @@ -187,7 +187,7 @@ public class KotlinImportOptimizer() : ImportOptimizer { val importableDescriptor = target.getImportableDescriptor() if (referencedName != null && importableDescriptor.getName() != referencedName) continue // resolved via alias - if (isAccessibleAsMember(target, element)) continue + if (isAccessibleAsMember(importableDescriptor, element)) continue usedDescriptors.add(importableDescriptor) } diff --git a/idea/testData/editor/optimizeImports/NestedClassInObject.kt b/idea/testData/editor/optimizeImports/NestedClassInObject.kt new file mode 100644 index 00000000000..ed1e42a9156 --- /dev/null +++ b/idea/testData/editor/optimizeImports/NestedClassInObject.kt @@ -0,0 +1,11 @@ +package ppp + +import java.util.Date + +object OOO { + fun foo() { + Nested() + } + + private class Nested +} diff --git a/idea/testData/editor/optimizeImports/NestedClassInObject.kt.after b/idea/testData/editor/optimizeImports/NestedClassInObject.kt.after new file mode 100644 index 00000000000..59053b38f9d --- /dev/null +++ b/idea/testData/editor/optimizeImports/NestedClassInObject.kt.after @@ -0,0 +1,9 @@ +package ppp + +object OOO { + fun foo() { + Nested() + } + + private class Nested +} diff --git a/idea/tests/org/jetbrains/kotlin/idea/imports/OptimizeImportsTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/imports/OptimizeImportsTestGenerated.java index 227c5bc2eda..8b0d7c8e20c 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/imports/OptimizeImportsTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/imports/OptimizeImportsTestGenerated.java @@ -139,6 +139,12 @@ public class OptimizeImportsTestGenerated extends AbstractOptimizeImportsTest { doTest(fileName); } + @TestMetadata("NestedClassInObject.kt") + public void testNestedClassInObject() throws Exception { + String fileName = JetTestUtils.navigationMetadata("idea/testData/editor/optimizeImports/NestedClassInObject.kt"); + doTest(fileName); + } + @TestMetadata("NestedClassReferenceOutsideClassBody.kt") public void testNestedClassReferenceOutsideClassBody() throws Exception { String fileName = JetTestUtils.navigationMetadata("idea/testData/editor/optimizeImports/NestedClassReferenceOutsideClassBody.kt");