diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/KotlinCacheServiceImpl.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/KotlinCacheServiceImpl.kt index 8099ab3d2fa..a5ef9e67ebc 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/KotlinCacheServiceImpl.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/resolve/KotlinCacheServiceImpl.kt @@ -353,11 +353,11 @@ class KotlinCacheServiceImpl(val project: Project) : KotlinCacheService { } private fun getFacadeToAnalyzeFiles(files: Collection): ResolutionFacade { - val syntheticFiles = findSyntheticFiles(files) + val notInSourceFiles = files.filterNotInProjectSource() val file = files.first() val moduleInfo = file.getModuleInfo() - if (syntheticFiles.isNotEmpty()) { - val projectFacade = getFacadeForSyntheticFiles(syntheticFiles) + if (notInSourceFiles.isNotEmpty()) { + val projectFacade = getFacadeForSyntheticFiles(notInSourceFiles) return ResolutionFacadeImpl(projectFacade, moduleInfo) } else { @@ -379,7 +379,7 @@ class KotlinCacheServiceImpl(val project: Project) : KotlinCacheService { return ResolutionFacadeImpl(projectFacade, moduleInfo) } - private fun findSyntheticFiles(files: Collection) = files.mapNotNull { + private fun Collection.filterNotInProjectSource() = mapNotNull { if (it is KtCodeFragment) it.getContextFile() else it }.filter { !ProjectRootsUtil.isInProjectSource(it)