Skip to content

Commit a8bf3e9

Browse files
Fix #12249: don't export java defined methods
1 parent 4bf2f04 commit a8bf3e9

File tree

2 files changed

+11
-0
lines changed

2 files changed

+11
-0
lines changed

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1000,6 +1000,8 @@ class Namer { typer: Typer =>
10001000
) match
10011001
case Some(other) => No(i"overrides ${other.showLocated}, which is already a member of $cls")
10021002
case None => Yes
1003+
else if sym.is(JavaDefined) then
1004+
No("is java defined")
10031005
else Yes
10041006
}
10051007

tests/neg/12249.scala

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
2+
export java.util.UUID // error
3+
// ^^^^
4+
// no eligible member UUID at java.util
5+
// java.util.UUID cannot be exported because it is java defined
6+
7+
def foo = println(UUID.randomUUID()) // error
8+
// ^^^^
9+
// Not found: UUID

0 commit comments

Comments
 (0)