diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/files/pos/bug2310.scala | 38 | ||||
-rw-r--r-- | test/files/pos/t0816.scala (renamed from test/pending/pos/t0816.scala) | 2 | ||||
-rw-r--r-- | test/files/pos/t1035.scala (renamed from test/pending/pos/t1035.scala) | 0 | ||||
-rw-r--r-- | test/files/pos/t2691.scala (renamed from test/pending/pos/t2691.scala) | 0 | ||||
-rw-r--r-- | test/files/pos/t425.scala (renamed from test/pending/pos/t425.scala) | 0 | ||||
-rw-r--r-- | test/pending/run/bugs425-and-816.scala | 27 |
6 files changed, 39 insertions, 28 deletions
diff --git a/test/files/pos/bug2310.scala b/test/files/pos/bug2310.scala new file mode 100644 index 0000000000..68912b4961 --- /dev/null +++ b/test/files/pos/bug2310.scala @@ -0,0 +1,38 @@ +import scala.Stream._ + +object consistencyError { + /* this gives an error: + Consistency problem compiling (virtual file)! + Trying to call method body%1(List(scala.collection.immutable.Stream[A])) with arguments (List(tp2, temp6, temp5)) + case (l #:: ls, rs) => None + ^ + scala.tools.nsc.symtab.Types$TypeError: too many arguments for method body%1: (val rs: scala.collection.immutable.Stream[A])None.type + + two errors found + vss(0) = + args = List(tp2, temp6, temp5) + vss(1) = value rs, value ls, value l + args = List(tp2, temp6, temp5) + targets(0) = FinalState(,scala.None) + targets(1) = FinalState(,scala.None) + labels(1) = method body%1 + labels(0) = method body%0 + bx = 1 + label.tpe = (val rs: scala.collection.immutable.Stream[A])None.type + */ + def crash[A](lefts: Stream[A], rights: Stream[A]) = (lefts, rights) match { + case (Stream.Empty, Stream.Empty) => None + case (l #:: ls, rs) => None + } + + // These work + // def works1[A](lefts: Stream[A]) = lefts match { + // case Stream.Empty => None + // case l #:: ls => None + // } + // + // def works2[A](lefts: Stream[A], rights: Stream[A]) = (lefts, rights) match { + // case (Stream.Empty, Stream.Empty) => None + // case (ls, rs) => None + // } +} diff --git a/test/pending/pos/t0816.scala b/test/files/pos/t0816.scala index 44282ea872..0128a0ad72 100644 --- a/test/pending/pos/t0816.scala +++ b/test/files/pos/t0816.scala @@ -1,6 +1,6 @@ abstract class Atest(val data: String) -case class Btest(override val data: String, val b: boolean) extends Atest(data) +case class Btest(override val data: String, val b: Boolean) extends Atest(data) case class Ctest(override val data: String) extends Btest(data, true) diff --git a/test/pending/pos/t1035.scala b/test/files/pos/t1035.scala index a280a415d2..a280a415d2 100644 --- a/test/pending/pos/t1035.scala +++ b/test/files/pos/t1035.scala diff --git a/test/pending/pos/t2691.scala b/test/files/pos/t2691.scala index ba2e52f1fe..ba2e52f1fe 100644 --- a/test/pending/pos/t2691.scala +++ b/test/files/pos/t2691.scala diff --git a/test/pending/pos/t425.scala b/test/files/pos/t425.scala index e50c50ac35..e50c50ac35 100644 --- a/test/pending/pos/t425.scala +++ b/test/files/pos/t425.scala diff --git a/test/pending/run/bugs425-and-816.scala b/test/pending/run/bugs425-and-816.scala deleted file mode 100644 index d9267d06af..0000000000 --- a/test/pending/run/bugs425-and-816.scala +++ /dev/null @@ -1,27 +0,0 @@ -object Test { - object bug425 { - case class A(x: Int) - case class B(override val x: Int, y: Double) extends A(x) - - val b: A = B(5, 3.3) - b match { - case B(x, y) => Console.println(y) - case A(x) => Console.println(x) - } - } - - object bug816 { - abstract class Atest(val data: String) - - case class Btest(override val data: String, val b: boolean) extends Atest(data) - - case class Ctest(override val data: String) extends Btest(data, true) - - class testCaseClass { - def test(x: Atest) = x match { - case Ctest(data) => Console.println("C") - case Btest(data, b) => Console.println("B") - } - } - } -} |