blob: 8a21661fbf4c9d894ebd204a5f3e4934233f4cfa (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
class C {
private type T = E
private type Tok = D
private val p: C = new C
def f1(x: T): Unit = () // error
def f1(x: Tok): Unit = () // ok
def f2(x: p.D): Unit = () // error
val v1: T = ??? // error
val v2: p.D = ??? // error
type U1[X <: T] // error
type U2 = T // error
private class E {
def f1ok(x: T): Unit = () // ok
def f2ok(x: p.D): Unit = () // ok
val v1ok: T = ??? // ok
val v2ok: p.D = ??? // ok
type U1ok[X <: T] //ok
type U2ok = T //ok
}
class D extends E { // error
def f1(x: T): Unit = () // error
def f2(x: p.D): Unit = () // error
val v1: T = ??? // error
val v2: p.D = ??? // error
type U1[X <: T] // error
type U2 = T // error
}
class F(x: T) // error
class G private (x: T) // ok
private trait U
class H extends U // error
}
|