Skip to content

Commit 63cd945

Browse files
authored
Merge pull request #11151 from dotty-staging/fix-11128
fix #11128: skip ctor proxy in named export
2 parents 2ba76b1 + d9dd836 commit 63cd945

File tree

3 files changed

+25
-1
lines changed

3 files changed

+25
-1
lines changed

compiler/src/dotty/tools/dotc/typer/Namer.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -995,7 +995,7 @@ class Namer { typer: Typer =>
995995
def whyNoForwarder(mbr: SingleDenotation): String = {
996996
val sym = mbr.symbol
997997
if (!sym.isAccessibleFrom(path.tpe)) "is not accessible"
998-
else if (sym.isConstructor || sym.is(ModuleClass) || sym.is(Bridge)) SKIP
998+
else if (sym.isConstructor || sym.is(ModuleClass) || sym.is(Bridge) || sym.is(ConstructorProxy)) SKIP
999999
else if (cls.derivesFrom(sym.owner) &&
10001000
(sym.owner == cls || !sym.is(Deferred))) i"is already a member of $cls"
10011001
else if (sym.is(Override))

tests/pos/i11128-wildcard.scala

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package foo
2+
3+
object Outer {
4+
5+
object Wrap {
6+
export Outer._
7+
}
8+
9+
class Bar
10+
11+
}
12+
13+
import Outer._
14+
15+
val wrapBar = new Wrap.Bar()

tests/pos/i11128.scala

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
package foo
2+
3+
object Wrap {
4+
export foo.Bar
5+
}
6+
7+
class Bar
8+
9+
val wrapBar = new Wrap.Bar()

0 commit comments

Comments
 (0)