From 4704941488356d3730ead09f3cc62978a336699e Mon Sep 17 00:00:00 2001 From: Evgeny Gerashchenko Date: Thu, 12 Feb 2015 23:59:43 +0300 Subject: [PATCH] Worked around yet another case of exception from inspection when code has "native" annotation. #KT-6764 fixed --- .../kotlin/idea/inspections/UnusedSymbolInspection.kt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/idea/src/org/jetbrains/kotlin/idea/inspections/UnusedSymbolInspection.kt b/idea/src/org/jetbrains/kotlin/idea/inspections/UnusedSymbolInspection.kt index 2d6bce9e65f..f33e99b04b9 100644 --- a/idea/src/org/jetbrains/kotlin/idea/inspections/UnusedSymbolInspection.kt +++ b/idea/src/org/jetbrains/kotlin/idea/inspections/UnusedSymbolInspection.kt @@ -62,6 +62,8 @@ import org.jetbrains.kotlin.psi.JetPsiUtil import org.jetbrains.kotlin.psi.JetObjectDeclaration import org.jetbrains.kotlin.psi.JetClassOrObject import org.jetbrains.kotlin.idea.util.ProjectRootsUtil +import com.intellij.util.IncorrectOperationException +import org.jetbrains.kotlin.idea.project.ProjectStructureUtil public class UnusedSymbolInspection : AbstractKotlinInspection() { private val javaInspection = UnusedDeclarationInspection() @@ -126,6 +128,7 @@ public class UnusedSymbolInspection : AbstractKotlinInspection() { // TODO Workaround for EA-64030 - IOE: PsiJavaParserFacadeImpl.createAnnotationFromText // This should be fixed on IDEA side: ClsAnnotation should not throw exceptions when annotation class has Java keyword if (declaration.getAnnotationEntries().any { it.getTypeReference().getText().endsWith("native") }) return false + if (ProjectStructureUtil.isJsKotlinModule(declaration.getContainingJetFile())) return false val lightElement: PsiElement? = when (declaration) { is JetClassOrObject -> declaration.toLightClass()