Compile actual and expected declarations together

#KT-20840 fixed
This commit is contained in:
Alexey Tsvetkov
2017-12-01 16:07:40 +03:00
parent 123fd64a34
commit fec2d08d22
56 changed files with 515 additions and 43 deletions
@@ -42,6 +42,7 @@ import org.jetbrains.kotlin.idea.compiler.IDELanguageSettingsProvider
import org.jetbrains.kotlin.idea.project.IdeaEnvironment
import org.jetbrains.kotlin.idea.project.ResolveElementCache
import org.jetbrains.kotlin.idea.stubindex.KotlinOverridableInternalMembersShortNameIndex
import org.jetbrains.kotlin.incremental.components.ExpectActualTracker
import org.jetbrains.kotlin.incremental.components.LookupTracker
import org.jetbrains.kotlin.incremental.components.NoLookupLocation
import org.jetbrains.kotlin.lexer.KtTokens
@@ -288,6 +289,7 @@ object IDELightClassContexts {
useInstance(GlobalSearchScope.EMPTY_SCOPE)
useInstance(LookupTracker.DO_NOTHING)
useInstance(ExpectActualTracker.DoNothing)
useImpl<FileScopeProviderImpl>()
useInstance(IDELanguageSettingsProvider.getLanguageVersionSettings(moduleInfo, project))
useInstance(FileBasedDeclarationProviderFactory(sm, files))
@@ -25,6 +25,7 @@ import org.jetbrains.kotlin.idea.caches.resolve.findModuleDescriptor
import org.jetbrains.kotlin.idea.core.toDescriptor
import org.jetbrains.kotlin.idea.facet.implementingDescriptors
import org.jetbrains.kotlin.idea.project.TargetPlatformDetector
import org.jetbrains.kotlin.incremental.components.ExpectActualTracker
import org.jetbrains.kotlin.psi.KtClassOrObject
import org.jetbrains.kotlin.psi.KtDeclaration
import org.jetbrains.kotlin.psi.KtNamedDeclaration
@@ -50,7 +51,8 @@ class PlatformExpectedAnnotator : Annotator {
val trace = BindingTraceContext()
for (module in implementingModules) {
ExpectedActualDeclarationChecker.checkExpectedDeclarationHasActual(declaration, descriptor, trace, module)
ExpectedActualDeclarationChecker.checkExpectedDeclarationHasActual(declaration, descriptor, trace, module,
ExpectActualTracker.DoNothing)
}
val suppressionCache = KotlinCacheService.getInstance(declaration.project).getSuppressionCache()