Skip to content

Commit 633fe44

Browse files
Fix #8368: Don't generate forwarders for excluded exports
1 parent 63343d2 commit 633fe44

File tree

3 files changed

+23
-1
lines changed

3 files changed

+23
-1
lines changed

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

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1135,7 +1135,8 @@ class Namer { typer: Typer =>
11351135
if sel.isWildcard then
11361136
addWildcardForwarders(seen, sel.span)
11371137
else
1138-
addForwardersNamed(sel.name, sel.rename, sel.span)
1138+
if sel.rename != nme.WILDCARD then
1139+
addForwardersNamed(sel.name, sel.rename, sel.span)
11391140
addForwarders(sels1, sel.name :: seen)
11401141
case _ =>
11411142

tests/neg/i8368.scala

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
trait Foo {
2+
def a = 1
3+
def b = 1
4+
def c = 1
5+
}
6+
7+
class Bar(foo: Foo) {
8+
export foo.{a => _, b => _, _}
9+
val x1 = a // error
10+
val x2 = b // error
11+
}

tests/pos/i8368.scala

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
trait Foo {
2+
def a = 1
3+
def b = 1
4+
def c = 1
5+
}
6+
7+
class Bar(foo: Foo) {
8+
export foo.{a => _, b => _, _}
9+
val x1 = c
10+
}

0 commit comments

Comments
 (0)