summaryrefslogtreecommitdiff
path: root/test/files/pos/exponential-spec.scala
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2012-06-30 21:48:10 -0700
committerPaul Phillips <paulp@improving.org>2012-06-30 21:49:27 -0700
commit39f01d4f48e59c2037a3af759eb6d55d0da50e70 (patch)
tree0eaddcf9392702fb93c74179e2cee2c9cad3d582 /test/files/pos/exponential-spec.scala
parent0a9cea6ea58571deb67d60193d60d12be6bb0233 (diff)
downloadscala-39f01d4f48e59c2037a3af759eb6d55d0da50e70.tar.gz
scala-39f01d4f48e59c2037a3af759eb6d55d0da50e70.tar.bz2
scala-39f01d4f48e59c2037a3af759eb6d55d0da50e70.zip
Fix for exponential compile time in specialization.
Review by @prokopec.
Diffstat (limited to 'test/files/pos/exponential-spec.scala')
-rw-r--r--test/files/pos/exponential-spec.scala47
1 files changed, 47 insertions, 0 deletions
diff --git a/test/files/pos/exponential-spec.scala b/test/files/pos/exponential-spec.scala
new file mode 100644
index 0000000000..83aef58f7e
--- /dev/null
+++ b/test/files/pos/exponential-spec.scala
@@ -0,0 +1,47 @@
+// a.scala
+// Sat Jun 30 19:51:17 PDT 2012
+
+trait Exp[T]
+
+object Test {
+ def f[T](exp: Exp[T]): Exp[T] = (
+ f[T] _
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T] // 4s
+ compose f[T] // 5s
+ compose f[T] // 5s
+ compose f[T] // 6s
+ compose f[T] // 7s
+ compose f[T] // 8s
+ compose f[T] // 11s
+ compose f[T] // 17s
+ compose f[T] // 29s
+ compose f[T] // 54s
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ compose f[T]
+ )(exp)
+}