diff options
Diffstat (limited to 'tests/untried/neg/t500.scala')
-rw-r--r-- | tests/untried/neg/t500.scala | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/untried/neg/t500.scala b/tests/untried/neg/t500.scala new file mode 100644 index 000000000..d843d71f0 --- /dev/null +++ b/tests/untried/neg/t500.scala @@ -0,0 +1,22 @@ +object Magic { + abstract class O[X,Y] { + type T >: X <: Y; + class I { def magic(v: T): T = v; } + } + def magic[X,Y](v: X): Y = { + val o: O[X,Y] = null; + val i: o.I = new o.I(); + i.magic(v); + } +} + +object Test { + def main(args: Array[String]): Unit = { + try { + val i: Int = Magic.magic("42"); + Console.println(i); + } catch { + case ex: Throwable => ex.printStackTrace() + } + } +} |