aboutsummaryrefslogtreecommitdiff
path: root/tests/untried/neg/t500.scala
diff options
context:
space:
mode:
Diffstat (limited to 'tests/untried/neg/t500.scala')
-rw-r--r--tests/untried/neg/t500.scala22
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()
+ }
+ }
+}