From d84805299a42cb8d2c756aff5a117af24dbeaaf4 Mon Sep 17 00:00:00 2001 From: Martin Odersky Date: Mon, 22 Aug 2016 16:18:49 +0200 Subject: Recategorize tests Passing tests from pending/pos go in pos. Some others go in diabled/not-testable. These are tests that require a compilation order which we cannot yet do with our unit testing framework. Compiling them alltogether (as is now doen in junit) does not work either for them because they contain a duplicate class. --- tests/pos/t3880.scala | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 tests/pos/t3880.scala (limited to 'tests/pos/t3880.scala') diff --git a/tests/pos/t3880.scala b/tests/pos/t3880.scala new file mode 100644 index 000000000..f778eb71a --- /dev/null +++ b/tests/pos/t3880.scala @@ -0,0 +1,16 @@ +abstract class Bar[+B] { +} +abstract class C1[+B] extends Bar[B] { + private[this] def g(x: C1[B]): Unit = () + + // this method is fine: notice that it allows the call to g, + // which requires C1[B], even though we matched on C1[_]. + // (That is good news.) + private[this] def f1(x: Bar[B]): Unit = x match { + case x: C1[_] => g(x) + } + // this one crashes. + private[this] def f2(x: Bar[B]): Unit = x match { + case x: C1[_] => f2(x) + } +} -- cgit v1.2.3