From 91dd827a726a12395d7b84c03d45ca6822bf8f12 Mon Sep 17 00:00:00 2001 From: Martin Odersky Date: Fri, 5 Jun 2015 17:18:11 +0200 Subject: Deskolemize types inferred for vals and defs We want to establish the invariant (optionally checked by assertNoSkolems) that symbols do not contain skolemized types as their info. This avoids unsoundness situations where a skolem gets exported as part if the result type of a method, so different instantiations look like their are the same instance. --- tests/pos/i583a.scala | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 tests/pos/i583a.scala (limited to 'tests/pos') diff --git a/tests/pos/i583a.scala b/tests/pos/i583a.scala new file mode 100644 index 000000000..a97a3998b --- /dev/null +++ b/tests/pos/i583a.scala @@ -0,0 +1,20 @@ +object Test1 { + + class Box[B](x: B) + + class C { + type T + val box: Box[T] = ??? + def f(x: T): T = ??? + def x: T = ??? + } + + def c: C = new C + + val b = c.box + + val f = c.f _ + +} + + -- cgit v1.2.3