aboutsummaryrefslogtreecommitdiff
path: root/tests/pos/flow.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2015-03-05 15:56:43 +0100
committerDmitry Petrashko <dmitry.petrashko@gmail.com>2015-03-18 11:14:15 +0100
commit35d1160cd65d21076b1f640624663ad7b35f9c56 (patch)
treee6dd003c59002bb31a96f0dc357ee1f5ef84188d /tests/pos/flow.scala
parent3823f29c05cb071cd3a595751543021a4f4cf382 (diff)
downloaddotty-35d1160cd65d21076b1f640624663ad7b35f9c56.tar.gz
dotty-35d1160cd65d21076b1f640624663ad7b35f9c56.tar.bz2
dotty-35d1160cd65d21076b1f640624663ad7b35f9c56.zip
More tests
Both some long overdue pos tests and more pickleOK tests
Diffstat (limited to 'tests/pos/flow.scala')
-rw-r--r--tests/pos/flow.scala26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/pos/flow.scala b/tests/pos/flow.scala
new file mode 100644
index 000000000..76c0d372c
--- /dev/null
+++ b/tests/pos/flow.scala
@@ -0,0 +1,26 @@
+trait FlowOps[+Out] {
+ type Repr[+O] <: FlowOps[O]
+}
+
+trait Flow[-In, +Out] extends FlowOps[Out] {
+ override type Repr[+O] <: Flow[In, O]
+ def map[T](f: Out => T): Repr[T] /* workaround: expand alias Flow[In, T] */
+}
+
+class Test {
+ def slowFlow: Unit = {
+ (null: Flow[String, String])
+ .map(b => b)
+ .map(b => b)
+ .map(b => b)
+ .map(b => b)
+ .map(b => b)
+ .map(b => b)
+ .map(b => b)
+ .map(b => b)
+ .map(b => b)
+ .map(b => b)
+ .map(b => b)
+ .map(b => b) // takes an age to compile
+ }
+}