File tree Expand file tree Collapse file tree 2 files changed +14
-1
lines changed
compiler/src/dotty/tools/dotc/interactive
language-server/test/dotty/tools/languageserver Expand file tree Collapse file tree 2 files changed +14
-1
lines changed Original file line number Diff line number Diff line change @@ -481,7 +481,11 @@ object Completion {
481
481
private def accessibleMembers (site : Type )(using Context ): Seq [SingleDenotation ] = {
482
482
def appendMemberSyms (name : Name , buf : mutable.Buffer [SingleDenotation ]): Unit =
483
483
try
484
- buf ++= site.member(name).alternatives
484
+ val member = site.member(name)
485
+ if member.symbol.isAccessibleFrom(site) then
486
+ buf ++= member.alternatives
487
+ else
488
+ buf ++= site.nonPrivateMember(name).alternatives
485
489
catch
486
490
case ex : TypeError =>
487
491
Original file line number Diff line number Diff line change @@ -1275,4 +1275,13 @@ class CompletionTest {
1275
1275
.noCompletions()
1276
1276
}
1277
1277
1278
+ @ Test def singleDenotNoCompletions : Unit = {
1279
+ val expected = Set ((" symbol" , Field , " Int" ))
1280
+ code """ class Test(val symbol: Int)
1281
+ |class BetterTest(symbol: Int) extends Test(symbol)
1282
+ |object O:
1283
+ | def t(test: BetterTest) = test.symb $m1"""
1284
+ .completion(m1, expected)
1285
+ }
1286
+
1278
1287
}
You can’t perform that action at this time.
0 commit comments