diff options
Diffstat (limited to 'tests/run/t3242.scala')
-rw-r--r-- | tests/run/t3242.scala | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/tests/run/t3242.scala b/tests/run/t3242.scala deleted file mode 100644 index 6a8ecd7a2..000000000 --- a/tests/run/t3242.scala +++ /dev/null @@ -1,52 +0,0 @@ - -import scala.language.{ higherKinds } - -object Test { - - def benchmarkA(num: Int): Unit = { - - type A = Int - - def updateM[M[_]](ms: M[A], update: (M[A], A)=>M[A]): M[A] = { - var is = ms - for (i <- 0 until num) is = update(is, i) - is - } - - // - def vectorAppend: Vector[A] = updateM[Vector](Vector(), (as, a)=>{ - val v = (as :+ a) - //println("==>append: i: "+i1+", v: "+v) - v - }) - // this will crash, Vector bug! - def vectorRemove(vec: Vector[A]): Vector[A] = updateM[Vector](vec, (as, a)=>{ - val v = (as filterNot{ _ == a}) - //val v = (is filter{ _ != i}) - //println("==>remove: i: "+a) - v - }) - - val ct = vectorAppend - println(" append [num: "+num+"] vec") - vectorRemove(ct) - println(" remove [num: "+num+"] vec") - } // BenchmarkA - - def comparison(num: Int): Unit = { - for (i <- 1 until 5) benchmarkA(num*i) - println(">> comparison done, num: "+num); - } - - def main(args: Array[String]): Unit = { - try { - //createBenchmarkA(23).testRun - - comparison(200) // OK - comparison(2000) // this will crach - - } catch { - case e: Exception => e.printStackTrace() - } - } -} |