diff --git a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/scopeProvider/FirIdeDependentAnalysisSourceModuleScopeContextForPositionTestGenerated.java b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/scopeProvider/FirIdeDependentAnalysisSourceModuleScopeContextForPositionTestGenerated.java
index 9e36ad1550c..714d2fc67c0 100644
--- a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/scopeProvider/FirIdeDependentAnalysisSourceModuleScopeContextForPositionTestGenerated.java
+++ b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/scopeProvider/FirIdeDependentAnalysisSourceModuleScopeContextForPositionTestGenerated.java
@@ -46,12 +46,36 @@ public class FirIdeDependentAnalysisSourceModuleScopeContextForPositionTestGener
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition"), Pattern.compile("^(.+)\\.kt$"), null, true);
}
+ @Test
+ @TestMetadata("annotationWithoutDeclaration.kt")
+ public void testAnnotationWithoutDeclaration() throws Exception {
+ runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/annotationWithoutDeclaration.kt");
+ }
+
@Test
@TestMetadata("contextReceiver.kt")
public void testContextReceiver() throws Exception {
runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/contextReceiver.kt");
}
+ @Test
+ @TestMetadata("contextReceiverWithoutDeclaration.kt")
+ public void testContextReceiverWithoutDeclaration() throws Exception {
+ runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/contextReceiverWithoutDeclaration.kt");
+ }
+
+ @Test
+ @TestMetadata("emptyContextForPositionInImportDirective.kt")
+ public void testEmptyContextForPositionInImportDirective() throws Exception {
+ runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInImportDirective.kt");
+ }
+
+ @Test
+ @TestMetadata("emptyContextForPositionInPackageDirective.kt")
+ public void testEmptyContextForPositionInPackageDirective() throws Exception {
+ runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInPackageDirective.kt");
+ }
+
@Test
@TestMetadata("enumEntry.kt")
public void testEnumEntry() throws Exception {
@@ -64,6 +88,12 @@ public class FirIdeDependentAnalysisSourceModuleScopeContextForPositionTestGener
runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/errorType.kt");
}
+ @Test
+ @TestMetadata("kDocWithoutDeclaration.kt")
+ public void testKDocWithoutDeclaration() throws Exception {
+ runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/kDocWithoutDeclaration.kt");
+ }
+
@Test
@TestMetadata("localTypeScope.kt")
public void testLocalTypeScope() throws Exception {
diff --git a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/scopeProvider/FirIdeNormalAnalysisSourceModuleScopeContextForPositionTestGenerated.java b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/scopeProvider/FirIdeNormalAnalysisSourceModuleScopeContextForPositionTestGenerated.java
index 4b32d64ac5c..5d06a3b8021 100644
--- a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/scopeProvider/FirIdeNormalAnalysisSourceModuleScopeContextForPositionTestGenerated.java
+++ b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/scopeProvider/FirIdeNormalAnalysisSourceModuleScopeContextForPositionTestGenerated.java
@@ -46,12 +46,36 @@ public class FirIdeNormalAnalysisSourceModuleScopeContextForPositionTestGenerate
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition"), Pattern.compile("^(.+)\\.kt$"), null, true);
}
+ @Test
+ @TestMetadata("annotationWithoutDeclaration.kt")
+ public void testAnnotationWithoutDeclaration() throws Exception {
+ runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/annotationWithoutDeclaration.kt");
+ }
+
@Test
@TestMetadata("contextReceiver.kt")
public void testContextReceiver() throws Exception {
runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/contextReceiver.kt");
}
+ @Test
+ @TestMetadata("contextReceiverWithoutDeclaration.kt")
+ public void testContextReceiverWithoutDeclaration() throws Exception {
+ runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/contextReceiverWithoutDeclaration.kt");
+ }
+
+ @Test
+ @TestMetadata("emptyContextForPositionInImportDirective.kt")
+ public void testEmptyContextForPositionInImportDirective() throws Exception {
+ runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInImportDirective.kt");
+ }
+
+ @Test
+ @TestMetadata("emptyContextForPositionInPackageDirective.kt")
+ public void testEmptyContextForPositionInPackageDirective() throws Exception {
+ runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInPackageDirective.kt");
+ }
+
@Test
@TestMetadata("enumEntry.kt")
public void testEnumEntry() throws Exception {
@@ -64,6 +88,12 @@ public class FirIdeNormalAnalysisSourceModuleScopeContextForPositionTestGenerate
runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/errorType.kt");
}
+ @Test
+ @TestMetadata("kDocWithoutDeclaration.kt")
+ public void testKDocWithoutDeclaration() throws Exception {
+ runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/kDocWithoutDeclaration.kt");
+ }
+
@Test
@TestMetadata("localTypeScope.kt")
public void testLocalTypeScope() throws Exception {
diff --git a/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/scopeProvider/FirStandaloneNormalAnalysisSourceModuleScopeContextForPositionTestGenerated.java b/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/scopeProvider/FirStandaloneNormalAnalysisSourceModuleScopeContextForPositionTestGenerated.java
index ff714926347..2faad208720 100644
--- a/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/scopeProvider/FirStandaloneNormalAnalysisSourceModuleScopeContextForPositionTestGenerated.java
+++ b/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/scopeProvider/FirStandaloneNormalAnalysisSourceModuleScopeContextForPositionTestGenerated.java
@@ -46,12 +46,36 @@ public class FirStandaloneNormalAnalysisSourceModuleScopeContextForPositionTestG
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition"), Pattern.compile("^(.+)\\.kt$"), null, true);
}
+ @Test
+ @TestMetadata("annotationWithoutDeclaration.kt")
+ public void testAnnotationWithoutDeclaration() throws Exception {
+ runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/annotationWithoutDeclaration.kt");
+ }
+
@Test
@TestMetadata("contextReceiver.kt")
public void testContextReceiver() throws Exception {
runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/contextReceiver.kt");
}
+ @Test
+ @TestMetadata("contextReceiverWithoutDeclaration.kt")
+ public void testContextReceiverWithoutDeclaration() throws Exception {
+ runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/contextReceiverWithoutDeclaration.kt");
+ }
+
+ @Test
+ @TestMetadata("emptyContextForPositionInImportDirective.kt")
+ public void testEmptyContextForPositionInImportDirective() throws Exception {
+ runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInImportDirective.kt");
+ }
+
+ @Test
+ @TestMetadata("emptyContextForPositionInPackageDirective.kt")
+ public void testEmptyContextForPositionInPackageDirective() throws Exception {
+ runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInPackageDirective.kt");
+ }
+
@Test
@TestMetadata("enumEntry.kt")
public void testEnumEntry() throws Exception {
@@ -64,6 +88,12 @@ public class FirStandaloneNormalAnalysisSourceModuleScopeContextForPositionTestG
runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/errorType.kt");
}
+ @Test
+ @TestMetadata("kDocWithoutDeclaration.kt")
+ public void testKDocWithoutDeclaration() throws Exception {
+ runTest("analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/kDocWithoutDeclaration.kt");
+ }
+
@Test
@TestMetadata("localTypeScope.kt")
public void testLocalTypeScope() throws Exception {
diff --git a/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/annotationWithoutDeclaration.kt b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/annotationWithoutDeclaration.kt
new file mode 100644
index 00000000000..c008d37387d
--- /dev/null
+++ b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/annotationWithoutDeclaration.kt
@@ -0,0 +1,11 @@
+// FILE: main.kt
+import pkg.A
+
+class B
+
+@e
+
+// FILE: dependency.kt
+package pkg
+
+annotation class A
diff --git a/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/annotationWithoutDeclaration.pretty.txt b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/annotationWithoutDeclaration.pretty.txt
new file mode 100644
index 00000000000..80036db1859
--- /dev/null
+++ b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/annotationWithoutDeclaration.pretty.txt
@@ -0,0 +1,37 @@
+element: e
+implicit receivers:
+scopes:
+ ExplicitSimpleImportingScope, index = 0
+ packages: 0
+ classifiers: 1
+ annotation class A
+ callables: 0
+ constructors: 0
+
+ PackageMemberScope, index = 1
+ packages: 7
+ META-INF
+ java
+ javax
+ kotlin
+ org
+ pkg
+ sun
+ classifiers: 1
+ class B
+ callables: 0
+ constructors: 0
+
+ DefaultSimpleImportingScope, index = 2
+
+ DefaultSimpleImportingScope, index = 3
+
+ ExplicitStarImportingScope, index = 4
+ packages: 0
+ classifiers: 0
+ callables: 0
+ constructors: 0
+
+ DefaultSimpleImportingScope, index = 5
+
+ DefaultStarImportingScope, index = 6
diff --git a/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/annotationWithoutDeclaration.txt b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/annotationWithoutDeclaration.txt
new file mode 100644
index 00000000000..2b41794e021
--- /dev/null
+++ b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/annotationWithoutDeclaration.txt
@@ -0,0 +1,99 @@
+element: e
+implicit receivers:
+scopes:
+ ExplicitSimpleImportingScope, index = 0
+ packages: 0
+ classifiers: 1
+ KtNamedClassOrObjectSymbol:
+ annotationsList: []
+ classIdIfNonLocal: pkg/A
+ classKind: ANNOTATION_CLASS
+ companionObject: null
+ contextReceivers: []
+ isActual: false
+ isData: false
+ isExpect: false
+ isExternal: false
+ isFun: false
+ isInline: false
+ isInner: false
+ modality: FINAL
+ name: A
+ origin: SOURCE
+ superTypes: [
+ KtUsualClassType:
+ annotationsList: []
+ ownTypeArguments: []
+ type: kotlin/Annotation
+ ]
+ symbolKind: TOP_LEVEL
+ typeParameters: []
+ visibility: Public
+ callables: 0
+ constructors: 0
+
+ PackageMemberScope, index = 1
+ packages: 7
+ KtPackageSymbol:
+ fqName: META-INF
+ origin: SOURCE
+ KtPackageSymbol:
+ fqName: java
+ origin: SOURCE
+ KtPackageSymbol:
+ fqName: javax
+ origin: SOURCE
+ KtPackageSymbol:
+ fqName: kotlin
+ origin: SOURCE
+ KtPackageSymbol:
+ fqName: org
+ origin: SOURCE
+ KtPackageSymbol:
+ fqName: pkg
+ origin: SOURCE
+ KtPackageSymbol:
+ fqName: sun
+ origin: SOURCE
+ classifiers: 1
+ KtNamedClassOrObjectSymbol:
+ annotationsList: []
+ classIdIfNonLocal: B
+ classKind: CLASS
+ companionObject: null
+ contextReceivers: []
+ isActual: false
+ isData: false
+ isExpect: false
+ isExternal: false
+ isFun: false
+ isInline: false
+ isInner: false
+ modality: FINAL
+ name: B
+ origin: SOURCE
+ superTypes: [
+ KtUsualClassType:
+ annotationsList: []
+ ownTypeArguments: []
+ type: kotlin/Any
+ ]
+ symbolKind: TOP_LEVEL
+ typeParameters: []
+ visibility: Public
+ callables: 0
+ constructors: 0
+
+ DefaultSimpleImportingScope, index = 2
+
+ DefaultSimpleImportingScope, index = 3
+
+ ExplicitStarImportingScope, index = 4
+ packages: 0
+ classifiers: 0
+ callables: 0
+ constructors: 0
+
+ DefaultSimpleImportingScope, index = 5
+
+ DefaultStarImportingScope, index = 6
diff --git a/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/contextReceiverWithoutDeclaration.kt b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/contextReceiverWithoutDeclaration.kt
new file mode 100644
index 00000000000..2c6eb15ca86
--- /dev/null
+++ b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/contextReceiverWithoutDeclaration.kt
@@ -0,0 +1,12 @@
+// IGNORE_FIR
+// FILE: main.kt
+import pkg.A
+
+class B
+
+context(e)
+
+// FILE: dependency.kt
+package pkg
+
+class A
diff --git a/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/contextReceiverWithoutDeclaration.pretty.txt b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/contextReceiverWithoutDeclaration.pretty.txt
new file mode 100644
index 00000000000..eafbadde19b
--- /dev/null
+++ b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/contextReceiverWithoutDeclaration.pretty.txt
@@ -0,0 +1,37 @@
+element: e
+implicit receivers:
+scopes:
+ ExplicitSimpleImportingScope, index = 0
+ packages: 0
+ classifiers: 1
+ class A
+ callables: 0
+ constructors: 0
+
+ PackageMemberScope, index = 1
+ packages: 7
+ META-INF
+ java
+ javax
+ kotlin
+ org
+ pkg
+ sun
+ classifiers: 1
+ class B
+ callables: 0
+ constructors: 0
+
+ DefaultSimpleImportingScope, index = 2
+
+ DefaultSimpleImportingScope, index = 3
+
+ ExplicitStarImportingScope, index = 4
+ packages: 0
+ classifiers: 0
+ callables: 0
+ constructors: 0
+
+ DefaultSimpleImportingScope, index = 5
+
+ DefaultStarImportingScope, index = 6
diff --git a/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/contextReceiverWithoutDeclaration.txt b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/contextReceiverWithoutDeclaration.txt
new file mode 100644
index 00000000000..592da8c17a1
--- /dev/null
+++ b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/contextReceiverWithoutDeclaration.txt
@@ -0,0 +1,99 @@
+element: e
+implicit receivers:
+scopes:
+ ExplicitSimpleImportingScope, index = 0
+ packages: 0
+ classifiers: 1
+ KtNamedClassOrObjectSymbol:
+ annotationsList: []
+ classIdIfNonLocal: pkg/A
+ classKind: CLASS
+ companionObject: null
+ contextReceivers: []
+ isActual: false
+ isData: false
+ isExpect: false
+ isExternal: false
+ isFun: false
+ isInline: false
+ isInner: false
+ modality: FINAL
+ name: A
+ origin: SOURCE
+ superTypes: [
+ KtUsualClassType:
+ annotationsList: []
+ ownTypeArguments: []
+ type: kotlin/Any
+ ]
+ symbolKind: TOP_LEVEL
+ typeParameters: []
+ visibility: Public
+ callables: 0
+ constructors: 0
+
+ PackageMemberScope, index = 1
+ packages: 7
+ KtPackageSymbol:
+ fqName: META-INF
+ origin: SOURCE
+ KtPackageSymbol:
+ fqName: java
+ origin: SOURCE
+ KtPackageSymbol:
+ fqName: javax
+ origin: SOURCE
+ KtPackageSymbol:
+ fqName: kotlin
+ origin: SOURCE
+ KtPackageSymbol:
+ fqName: org
+ origin: SOURCE
+ KtPackageSymbol:
+ fqName: pkg
+ origin: SOURCE
+ KtPackageSymbol:
+ fqName: sun
+ origin: SOURCE
+ classifiers: 1
+ KtNamedClassOrObjectSymbol:
+ annotationsList: []
+ classIdIfNonLocal: B
+ classKind: CLASS
+ companionObject: null
+ contextReceivers: []
+ isActual: false
+ isData: false
+ isExpect: false
+ isExternal: false
+ isFun: false
+ isInline: false
+ isInner: false
+ modality: FINAL
+ name: B
+ origin: SOURCE
+ superTypes: [
+ KtUsualClassType:
+ annotationsList: []
+ ownTypeArguments: []
+ type: kotlin/Any
+ ]
+ symbolKind: TOP_LEVEL
+ typeParameters: []
+ visibility: Public
+ callables: 0
+ constructors: 0
+
+ DefaultSimpleImportingScope, index = 2
+
+ DefaultSimpleImportingScope, index = 3
+
+ ExplicitStarImportingScope, index = 4
+ packages: 0
+ classifiers: 0
+ callables: 0
+ constructors: 0
+
+ DefaultSimpleImportingScope, index = 5
+
+ DefaultStarImportingScope, index = 6
diff --git a/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInImportDirective.kt b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInImportDirective.kt
new file mode 100644
index 00000000000..f134a83f059
--- /dev/null
+++ b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInImportDirective.kt
@@ -0,0 +1,2 @@
+// IGNORE_FIR
+import a.b.c.e
diff --git a/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInImportDirective.pretty.txt b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInImportDirective.pretty.txt
new file mode 100644
index 00000000000..86ccc71a87c
--- /dev/null
+++ b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInImportDirective.pretty.txt
@@ -0,0 +1,3 @@
+element: e
+implicit receivers:
+scopes:
diff --git a/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInImportDirective.txt b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInImportDirective.txt
new file mode 100644
index 00000000000..86ccc71a87c
--- /dev/null
+++ b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInImportDirective.txt
@@ -0,0 +1,3 @@
+element: e
+implicit receivers:
+scopes:
diff --git a/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInPackageDirective.kt b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInPackageDirective.kt
new file mode 100644
index 00000000000..65f7224ddc5
--- /dev/null
+++ b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInPackageDirective.kt
@@ -0,0 +1,2 @@
+// IGNORE_FIR
+package a.b.c.e
diff --git a/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInPackageDirective.pretty.txt b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInPackageDirective.pretty.txt
new file mode 100644
index 00000000000..86ccc71a87c
--- /dev/null
+++ b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInPackageDirective.pretty.txt
@@ -0,0 +1,3 @@
+element: e
+implicit receivers:
+scopes:
diff --git a/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInPackageDirective.txt b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInPackageDirective.txt
new file mode 100644
index 00000000000..86ccc71a87c
--- /dev/null
+++ b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/emptyContextForPositionInPackageDirective.txt
@@ -0,0 +1,3 @@
+element: e
+implicit receivers:
+scopes:
diff --git a/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/kDocWithoutDeclaration.kt b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/kDocWithoutDeclaration.kt
new file mode 100644
index 00000000000..507854e19af
--- /dev/null
+++ b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/kDocWithoutDeclaration.kt
@@ -0,0 +1,13 @@
+// IGNORE_FIR
+// FILE: main.kt
+import pkg.A
+
+class B
+/**
+ * [e]
+ */
+
+// FILE: dependency.kt
+package pkg
+
+class A
diff --git a/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/kDocWithoutDeclaration.pretty.txt b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/kDocWithoutDeclaration.pretty.txt
new file mode 100644
index 00000000000..a966830057a
--- /dev/null
+++ b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/kDocWithoutDeclaration.pretty.txt
@@ -0,0 +1,38 @@
+element: e
+implicit receivers:
+scopes:
+ ExplicitSimpleImportingScope, index = 0
+ packages: 0
+ classifiers: 1
+ class A
+ callables: 0
+ constructors: 0
+
+ PackageMemberScope, index = 1
+ packages: 7
+ META-INF
+ java
+ javax
+ kotlin
+ org
+ pkg
+ sun
+ classifiers: 1
+ class B
+ callables: 0
+ constructors: 0
+
+ DefaultSimpleImportingScope, index = 2
+
+ DefaultSimpleImportingScope, index = 3
+
+ ExplicitStarImportingScope, index = 4
+ packages: 0
+ classifiers: 0
+ callables: 0
+ constructors: 0
+
+ DefaultSimpleImportingScope, index = 5
+
+ DefaultStarImportingScope, index = 6
+
diff --git a/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/kDocWithoutDeclaration.txt b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/kDocWithoutDeclaration.txt
new file mode 100644
index 00000000000..d9dc8333edc
--- /dev/null
+++ b/analysis/analysis-api/testData/components/scopeProvider/scopeContextForPosition/kDocWithoutDeclaration.txt
@@ -0,0 +1,100 @@
+element: e
+implicit receivers:
+scopes:
+ ExplicitSimpleImportingScope, index = 0
+ packages: 0
+ classifiers: 1
+ KtNamedClassOrObjectSymbol:
+ annotationsList: []
+ classIdIfNonLocal: pkg/A
+ classKind: CLASS
+ companionObject: null
+ contextReceivers: []
+ isActual: false
+ isData: false
+ isExpect: false
+ isExternal: false
+ isFun: false
+ isInline: false
+ isInner: false
+ modality: FINAL
+ name: A
+ origin: SOURCE
+ superTypes: [
+ KtUsualClassType:
+ annotationsList: []
+ ownTypeArguments: []
+ type: kotlin/Any
+ ]
+ symbolKind: TOP_LEVEL
+ typeParameters: []
+ visibility: Public
+ callables: 0
+ constructors: 0
+
+ PackageMemberScope, index = 1
+ packages: 7
+ KtPackageSymbol:
+ fqName: META-INF
+ origin: SOURCE
+ KtPackageSymbol:
+ fqName: java
+ origin: SOURCE
+ KtPackageSymbol:
+ fqName: javax
+ origin: SOURCE
+ KtPackageSymbol:
+ fqName: kotlin
+ origin: SOURCE
+ KtPackageSymbol:
+ fqName: org
+ origin: SOURCE
+ KtPackageSymbol:
+ fqName: pkg
+ origin: SOURCE
+ KtPackageSymbol:
+ fqName: sun
+ origin: SOURCE
+ classifiers: 1
+ KtNamedClassOrObjectSymbol:
+ annotationsList: []
+ classIdIfNonLocal: B
+ classKind: CLASS
+ companionObject: null
+ contextReceivers: []
+ isActual: false
+ isData: false
+ isExpect: false
+ isExternal: false
+ isFun: false
+ isInline: false
+ isInner: false
+ modality: FINAL
+ name: B
+ origin: SOURCE
+ superTypes: [
+ KtUsualClassType:
+ annotationsList: []
+ ownTypeArguments: []
+ type: kotlin/Any
+ ]
+ symbolKind: TOP_LEVEL
+ typeParameters: []
+ visibility: Public
+ callables: 0
+ constructors: 0
+
+ DefaultSimpleImportingScope, index = 2
+
+ DefaultSimpleImportingScope, index = 3
+
+ ExplicitStarImportingScope, index = 4
+ packages: 0
+ classifiers: 0
+ callables: 0
+ constructors: 0
+
+ DefaultSimpleImportingScope, index = 5
+
+ DefaultStarImportingScope, index = 6
+