diff --git a/.idea/inspectionProfiles/idea_default.xml b/.idea/inspectionProfiles/idea_default.xml
index 5773ac8f659..27433fef0fc 100644
--- a/.idea/inspectionProfiles/idea_default.xml
+++ b/.idea/inspectionProfiles/idea_default.xml
@@ -115,6 +115,7 @@
+
diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/declarationsSearch/overridersSearch.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/declarationsSearch/overridersSearch.kt
index d6563463eeb..205aaf963b8 100644
--- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/declarationsSearch/overridersSearch.kt
+++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/declarationsSearch/overridersSearch.kt
@@ -12,7 +12,6 @@ import com.intellij.psi.search.searches.DirectClassInheritorsSearch
import com.intellij.psi.search.searches.FunctionalExpressionSearch
import com.intellij.psi.search.searches.OverridingMethodsSearch
import com.intellij.psi.util.MethodSignatureUtil
-import com.intellij.psi.util.PsiUtil
import com.intellij.psi.util.TypeConversionUtil
import com.intellij.util.EmptyQuery
import com.intellij.util.MergeQuery
@@ -31,6 +30,7 @@ import org.jetbrains.kotlin.idea.caches.resolve.resolveToDescriptorIfAny
import org.jetbrains.kotlin.idea.caches.resolve.unsafeResolveToDescriptor
import org.jetbrains.kotlin.idea.core.getDeepestSuperDeclarations
import org.jetbrains.kotlin.idea.core.isOverridable
+import org.jetbrains.kotlin.idea.core.util.compat.psi.canBeOverridden
import org.jetbrains.kotlin.idea.search.allScope
import org.jetbrains.kotlin.idea.search.excludeKotlinSources
import org.jetbrains.kotlin.idea.util.application.runReadAction
@@ -42,7 +42,7 @@ import org.jetbrains.kotlin.util.findCallableMemberBySignature
import java.util.*
fun PsiElement.isOverridableElement(): Boolean = when (this) {
- is PsiMethod -> PsiUtil.canBeOverriden(this)
+ is PsiMethod -> canBeOverridden(this)
is KtDeclaration -> isOverridable()
else -> false
}
@@ -104,7 +104,7 @@ object KotlinPsiMethodOverridersSearch : HierarchySearch(PsiMethodOve
object PsiMethodOverridingHierarchyTraverser: HierarchyTraverser {
override fun nextElements(current: PsiMethod): Iterable = KotlinPsiMethodOverridersSearch.searchDirectOverriders(current)
- override fun shouldDescend(element: PsiMethod): Boolean = PsiUtil.canBeOverriden(element)
+ override fun shouldDescend(element: PsiMethod): Boolean = canBeOverridden(element)
}
fun PsiElement.toPossiblyFakeLightMethods(): List {
diff --git a/idea/idea-core/src/org/jetbrains/kotlin/idea/core/util/compat/psi/javaPsiUtil.kt b/idea/idea-core/src/org/jetbrains/kotlin/idea/core/util/compat/psi/javaPsiUtil.kt
new file mode 100644
index 00000000000..16e87b60013
--- /dev/null
+++ b/idea/idea-core/src/org/jetbrains/kotlin/idea/core/util/compat/psi/javaPsiUtil.kt
@@ -0,0 +1,18 @@
+/*
+ * Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
+ * that can be found in the license/LICENSE.txt file.
+ */
+
+package org.jetbrains.kotlin.idea.core.util.compat.psi
+
+import com.intellij.psi.PsiMethod
+import com.intellij.psi.util.PsiUtil
+
+/**
+ * Method is absent in 172.
+ * BUNCH: 173
+ */
+@Suppress("IncompatibleAPI")
+fun canBeOverridden(method: PsiMethod): Boolean {
+ return PsiUtil.canBeOverridden(method)
+}
\ No newline at end of file
diff --git a/idea/idea-core/src/org/jetbrains/kotlin/idea/core/util/compat/psi/javaPsiUtil.kt.172 b/idea/idea-core/src/org/jetbrains/kotlin/idea/core/util/compat/psi/javaPsiUtil.kt.172
new file mode 100644
index 00000000000..06836b3581d
--- /dev/null
+++ b/idea/idea-core/src/org/jetbrains/kotlin/idea/core/util/compat/psi/javaPsiUtil.kt.172
@@ -0,0 +1,18 @@
+/*
+ * Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
+ * that can be found in the license/LICENSE.txt file.
+ */
+
+package org.jetbrains.kotlin.idea.core.util.compat.psi
+
+import com.intellij.psi.PsiMethod
+import com.intellij.psi.util.PsiUtil
+
+/**
+ * Method is absent in 172.
+ * BUNCH: 173
+ */
+@Suppress("IncompatibleAPI")
+fun canBeOverridden(method: PsiMethod): Boolean {
+ return PsiUtil.canBeOverriden(method)
+}
\ No newline at end of file