diff --git a/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/renameConflictUtils.kt b/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/renameConflictUtils.kt index e857ddbda52..36b37888bd5 100644 --- a/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/renameConflictUtils.kt +++ b/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/renameConflictUtils.kt @@ -99,7 +99,7 @@ internal fun checkRedeclarations( fun MemberScope.findSiblingsByName(): List { val descriptorKindFilter = when (descriptor) { - is ClassDescriptor -> DescriptorKindFilter.CLASSIFIERS + is ClassifierDescriptor -> DescriptorKindFilter.CLASSIFIERS is PropertyDescriptor -> DescriptorKindFilter.VARIABLES is FunctionDescriptor -> DescriptorKindFilter.FUNCTIONS else -> return emptyList() diff --git a/idea/testData/refactoring/rename/classAndTypeAliasRedeclaration/after/test.kt b/idea/testData/refactoring/rename/classAndTypeAliasRedeclaration/after/test.kt new file mode 100644 index 00000000000..c11fd7fb0d9 --- /dev/null +++ b/idea/testData/refactoring/rename/classAndTypeAliasRedeclaration/after/test.kt @@ -0,0 +1,3 @@ +actual typealias Foo = Foo + +class Foo \ No newline at end of file diff --git a/idea/testData/refactoring/rename/classAndTypeAliasRedeclaration/before/test.kt b/idea/testData/refactoring/rename/classAndTypeAliasRedeclaration/before/test.kt new file mode 100644 index 00000000000..80095229fe9 --- /dev/null +++ b/idea/testData/refactoring/rename/classAndTypeAliasRedeclaration/before/test.kt @@ -0,0 +1,3 @@ +actual typealias /*rename*/A = Foo + +class Foo \ No newline at end of file diff --git a/idea/testData/refactoring/rename/classAndTypeAliasRedeclaration/classAndTypeAliasRedeclaration.test b/idea/testData/refactoring/rename/classAndTypeAliasRedeclaration/classAndTypeAliasRedeclaration.test new file mode 100644 index 00000000000..c3213f5bef7 --- /dev/null +++ b/idea/testData/refactoring/rename/classAndTypeAliasRedeclaration/classAndTypeAliasRedeclaration.test @@ -0,0 +1,7 @@ +{ + "type": "MARKED_ELEMENT", + "mainFile": "test.kt", + "newName": "Foo", + "withRuntime": "true", + "hint": "Class 'Foo' is already declared in package" +} \ No newline at end of file diff --git a/idea/tests/org/jetbrains/kotlin/idea/refactoring/rename/RenameTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/refactoring/rename/RenameTestGenerated.java index 0ca2418864b..50d09836019 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/refactoring/rename/RenameTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/refactoring/rename/RenameTestGenerated.java @@ -157,6 +157,12 @@ public class RenameTestGenerated extends AbstractRenameTest { doTest(fileName); } + @TestMetadata("classAndTypeAliasRedeclaration/classAndTypeAliasRedeclaration.test") + public void testClassAndTypeAliasRedeclaration_ClassAndTypeAliasRedeclaration() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/refactoring/rename/classAndTypeAliasRedeclaration/classAndTypeAliasRedeclaration.test"); + doTest(fileName); + } + @TestMetadata("classByPrimaryConstructor/classByPrimaryConstructor.test") public void testClassByPrimaryConstructor_ClassByPrimaryConstructor() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("idea/testData/refactoring/rename/classByPrimaryConstructor/classByPrimaryConstructor.test");