aboutsummaryrefslogtreecommitdiff
path: root/tests/pos/for-filter.scala
diff options
context:
space:
mode:
Diffstat (limited to 'tests/pos/for-filter.scala')
-rw-r--r--tests/pos/for-filter.scala12
1 files changed, 12 insertions, 0 deletions
diff --git a/tests/pos/for-filter.scala b/tests/pos/for-filter.scala
new file mode 100644
index 000000000..3baac4f0c
--- /dev/null
+++ b/tests/pos/for-filter.scala
@@ -0,0 +1,12 @@
+object Test {
+
+ case class C[T](xs: List[T]) {
+ def filter(p: T => Boolean) = new C(xs.filter(p))
+ def map[U](f: T => U) = new C(xs.map(f))
+ }
+
+ def main(args: Array[String]): Unit =
+ println(for (x <- C(List(1, 2, 3)) if x % 2 == 0) yield x)
+ // println(C(List(1, 2, 3)).withFilter(_ % 2 == 0)) // error
+
+}