diff options
Diffstat (limited to 'test/files/run/t4300.scala')
-rw-r--r-- | test/files/run/t4300.scala | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/test/files/run/t4300.scala b/test/files/run/t4300.scala new file mode 100644 index 0000000000..243d347830 --- /dev/null +++ b/test/files/run/t4300.scala @@ -0,0 +1,25 @@ + +trait A { + def f() = println("A") +} + +class B extends A { + def b() = super[A].f() + trait C { + def c() = B.super[A].f() + } + def g() = for(i <- 0 until 1) super[A].f() + def h() = for(i <- 0 until 1) B.super[A].f() + override def f() = println("B") +} + + +object Test { + def main(args : Array[String]) : Unit = { + val b = new B() + b.b() + new b.C(){}.c() + b.g() // was ClassCastException + b.h() // was ClassCastException + } +} |