diff --git a/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/symbols/AbstractSymbolTest.kt b/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/symbols/AbstractSymbolTest.kt index 2a617ff1e89..17816840a21 100644 --- a/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/symbols/AbstractSymbolTest.kt +++ b/analysis/analysis-api-impl-base/tests/org/jetbrains/kotlin/analysis/api/impl/base/test/cases/symbols/AbstractSymbolTest.kt @@ -16,6 +16,7 @@ import org.jetbrains.kotlin.analysis.api.impl.base.test.cases.symbols.SymbolTest import org.jetbrains.kotlin.analysis.api.renderer.declarations.impl.KtDeclarationRendererForDebug import org.jetbrains.kotlin.analysis.api.renderer.declarations.renderers.KtClassifierBodyRenderer import org.jetbrains.kotlin.analysis.api.symbols.* +import org.jetbrains.kotlin.analysis.api.symbols.markers.KtSymbolWithTypeParameters import org.jetbrains.kotlin.analysis.api.symbols.pointers.KtPsiBasedSymbolPointer import org.jetbrains.kotlin.analysis.api.symbols.pointers.KtSymbolPointer import org.jetbrains.kotlin.analysis.test.framework.base.AbstractAnalysisApiSingleFileTest @@ -288,6 +289,12 @@ private fun KtSymbol?.withImplicitSymbols(): Sequence { return sequence { yield(ktSymbol) + if (ktSymbol is KtSymbolWithTypeParameters) { + for (parameter in ktSymbol.typeParameters) { + yieldAll(parameter.withImplicitSymbols()) + } + } + if (ktSymbol is KtPropertySymbol) { yieldAll(ktSymbol.getter.withImplicitSymbols()) yieldAll(ktSymbol.setter.withImplicitSymbols()) diff --git a/analysis/analysis-api/testData/scopes/substitutionOverridesUnwrapping/Implement_java_util_Collection.kt b/analysis/analysis-api/testData/scopes/substitutionOverridesUnwrapping/Implement_java_util_Collection.kt index 1fefe6c6bf4..61a3c3141d9 100644 --- a/analysis/analysis-api/testData/scopes/substitutionOverridesUnwrapping/Implement_java_util_Collection.kt +++ b/analysis/analysis-api/testData/scopes/substitutionOverridesUnwrapping/Implement_java_util_Collection.kt @@ -1,3 +1,5 @@ +// DO_NOT_CHECK_SYMBOL_RESTORE_K2 + package test class SomeClass diff --git a/analysis/analysis-api/testData/symbols/symbolByFqName/class.kt b/analysis/analysis-api/testData/symbols/symbolByFqName/class.kt index bc6bb6b7896..239985064ac 100644 --- a/analysis/analysis-api/testData/symbols/symbolByFqName/class.kt +++ b/analysis/analysis-api/testData/symbols/symbolByFqName/class.kt @@ -1,3 +1,4 @@ // RUNTIME +// DO_NOT_CHECK_SYMBOL_RESTORE_K1 // class: kotlin/Lazy diff --git a/analysis/analysis-api/testData/symbols/symbolByFqName/fileWalkDirectionEnum.kt b/analysis/analysis-api/testData/symbols/symbolByFqName/fileWalkDirectionEnum.kt index cc4ad44ca79..37bd47bb7ce 100644 --- a/analysis/analysis-api/testData/symbols/symbolByFqName/fileWalkDirectionEnum.kt +++ b/analysis/analysis-api/testData/symbols/symbolByFqName/fileWalkDirectionEnum.kt @@ -1,3 +1,4 @@ // WITH_STDLIB // callable: kotlin/collections/listOf +// DO_NOT_CHECK_SYMBOL_RESTORE_K1 \ No newline at end of file diff --git a/analysis/analysis-api/testData/symbols/symbolByFqName/iterator.kt b/analysis/analysis-api/testData/symbols/symbolByFqName/iterator.kt index 9ba9d1f8f30..adb3b8dda8f 100644 --- a/analysis/analysis-api/testData/symbols/symbolByFqName/iterator.kt +++ b/analysis/analysis-api/testData/symbols/symbolByFqName/iterator.kt @@ -1 +1,3 @@ class: kotlin/collections/Iterator + +// DO_NOT_CHECK_SYMBOL_RESTORE_K1 diff --git a/analysis/analysis-api/testData/symbols/symbolByFqName/nestedClass.kt b/analysis/analysis-api/testData/symbols/symbolByFqName/nestedClass.kt index 967d0102d23..a83be6509c1 100644 --- a/analysis/analysis-api/testData/symbols/symbolByFqName/nestedClass.kt +++ b/analysis/analysis-api/testData/symbols/symbolByFqName/nestedClass.kt @@ -1 +1,2 @@ // class: kotlin/collections/MutableMap.MutableEntry +// DO_NOT_CHECK_SYMBOL_RESTORE_K1 \ No newline at end of file