diff --git a/compiler/src/dotty/tools/dotc/typer/Applications.scala b/compiler/src/dotty/tools/dotc/typer/Applications.scala index 36e3618d30f7..a8abd868fdef 100644 --- a/compiler/src/dotty/tools/dotc/typer/Applications.scala +++ b/compiler/src/dotty/tools/dotc/typer/Applications.scala @@ -272,7 +272,7 @@ object Applications { else def selectGetter(qual: Tree): Tree = val getterDenot = qual.tpe.member(getterName) - .accessibleFrom(qual.tpe.widenIfUnstable) // to reset Local + .accessibleFrom(qual.tpe.widenIfUnstable, superAccess = true) // to reset Local if (getterDenot.exists) qual.select(TermRef(qual.tpe, getterName, getterDenot)) else EmptyTree if !meth.isClassConstructor then diff --git a/tests/pos/i16814.scala b/tests/pos/i16814.scala new file mode 100644 index 000000000000..bffbb5788c0b --- /dev/null +++ b/tests/pos/i16814.scala @@ -0,0 +1,2 @@ +class Foo protected (foo: Int = 0) { } +class Bar extends Foo