1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
trait T extends Any {
def foo = 1
type X
}
class C1(val a: Any) extends AnyVal with T {
override def foo = super[T].foo // error
}
class C2(val a: Int) extends AnyVal with T {
override def foo = super.foo + a // okay
}
class C3(val a: Int) extends AnyVal with T {
override def foo = C3.super.foo + a // okay
}
class C4(val a: Int) extends AnyVal with T {
def foo {
class Inner extends T {
override def foo = super[T].foo + a // no (direct) error, other than that a nested class is currently illegal.
}
}
}
|