diff --git a/compiler/src/dotty/tools/dotc/typer/Namer.scala b/compiler/src/dotty/tools/dotc/typer/Namer.scala index 731f1786cac8..77467efc3949 100644 --- a/compiler/src/dotty/tools/dotc/typer/Namer.scala +++ b/compiler/src/dotty/tools/dotc/typer/Namer.scala @@ -1328,8 +1328,9 @@ class Namer { typer: Typer => */ def moduleValSig(sym: Symbol)(using Context): Type = { val clsName = sym.name.moduleClassName - val cls = ctx.denotNamed(clsName).suchThat(_.is(ModuleClass)) - .orElse(newStubSymbol(ctx.owner, clsName).assertingErrorsReported) + val cls = ctx.effectiveScope.lookupAll(clsName) + .find(_.is(ModuleClass)) + .getOrElse(newStubSymbol(ctx.owner, clsName).assertingErrorsReported) ctx.owner.thisType.select(clsName, cls) } diff --git a/tests/pos/i11141.scala b/tests/pos/i11141.scala new file mode 100644 index 000000000000..c0fc916ccb35 --- /dev/null +++ b/tests/pos/i11141.scala @@ -0,0 +1,5 @@ +package p +export X._ + +object X: + val A = 42