summaryrefslogtreecommitdiff
path: root/test/files/specialized
diff options
context:
space:
mode:
Diffstat (limited to 'test/files/specialized')
-rw-r--r--test/files/specialized/SI-5005.check33
-rw-r--r--test/files/specialized/SI-5005.scala27
-rw-r--r--test/files/specialized/spec-matrix-new.scala8
3 files changed, 5 insertions, 63 deletions
diff --git a/test/files/specialized/SI-5005.check b/test/files/specialized/SI-5005.check
deleted file mode 100644
index 81e8342dad..0000000000
--- a/test/files/specialized/SI-5005.check
+++ /dev/null
@@ -1,33 +0,0 @@
-[[syntax trees at end of specialize]] // newSource1
-package <empty> {
- class C2[@specialized(scala.Boolean) U >: Nothing <: Any] extends Object {
- def <init>(): C2[U] = {
- C2.super.<init>();
- ()
- };
- def apply(x: U): U = x;
- <specialized> def apply$mcZ$sp(x: Boolean): Boolean = C2.this.apply(x.asInstanceOf[U]()).asInstanceOf[Boolean]()
- };
- class B extends Object {
- def <init>(): B = {
- B.super.<init>();
- ()
- };
- new C2$mcZ$sp().apply$mcZ$sp(true)
- };
- <specialized> class C2$mcZ$sp extends C2[Boolean] {
- <specialized> def <init>(): C2$mcZ$sp = {
- C2$mcZ$sp.super.<init>();
- ()
- };
- @inline final override <specialized> def apply(x: Boolean): Boolean = C2$mcZ$sp.this.apply$mcZ$sp(x);
- @inline final override <specialized> def apply$mcZ$sp(x: Boolean): Boolean = x
- }
-}
-
-[log inliner] Analyzing C2.apply count 0 with 1 blocks
-[log inliner] C2.apply blocks before inlining: 1 (2) after: 1 (2)
-[log inliner] Analyzing C2.apply$mcZ$sp count 0 with 1 blocks
-[log inliner] C2.apply$mcZ$sp blocks before inlining: 1 (8) after: 1 (8)
-[log inliner] Not inlining into apply because it is marked @inline.
-[log inliner] Not inlining into apply$mcZ$sp because it is marked @inline.
diff --git a/test/files/specialized/SI-5005.scala b/test/files/specialized/SI-5005.scala
deleted file mode 100644
index 3d1ada49e2..0000000000
--- a/test/files/specialized/SI-5005.scala
+++ /dev/null
@@ -1,27 +0,0 @@
-import scala.tools.partest._
-import java.io._
-
-object Test extends DirectTest {
-
- override def extraSettings: String = "-usejavacp -Xprint:spec -optimize -Ylog:inliner -d " + testOutput.path
-
- override def code = """
- class C2[@specialized(Boolean) U]() {
- @inline final def apply(x: U): U = x
- }
-
- class B {
- (new C2[Boolean]())(true)
- }
- """
-
- override def show(): Unit = {
- // redirect err to out, for inliner log
- val prevErr = System.err
- System.setErr(System.out)
- compile()
- System.setErr(prevErr)
- }
-
- override def isDebug = false // so we don't get the newSettings warning
-}
diff --git a/test/files/specialized/spec-matrix-new.scala b/test/files/specialized/spec-matrix-new.scala
index 65b46e8d48..e9a6e35219 100644
--- a/test/files/specialized/spec-matrix-new.scala
+++ b/test/files/specialized/spec-matrix-new.scala
@@ -1,7 +1,9 @@
+import scala.reflect.{ClassTag, classTag}
+
/** Test matrix multiplication with specialization.
*/
-class Matrix[@specialized A: ArrayTag](val rows: Int, val cols: Int) {
+class Matrix[@specialized A: ClassTag](val rows: Int, val cols: Int) {
private val arr: Array[Array[A]] = Array.ofDim[A](rows, cols)
def apply(i: Int, j: Int): A = {
@@ -52,7 +54,7 @@ object Test {
}
}
- def multTag[@specialized(Int) T](m: Matrix[T], n: Matrix[T])(implicit at: ArrayTag[T], num: Numeric[T]) {
+ def multTag[@specialized(Int) T](m: Matrix[T], n: Matrix[T])(implicit at: ClassTag[T], num: Numeric[T]) {
val p = new Matrix[T](m.rows, n.cols)
import num._
@@ -77,4 +79,4 @@ object Test {
}
p
}
-}
+} \ No newline at end of file