summaryrefslogtreecommitdiff
path: root/test/files/neg/t6258.scala
diff options
context:
space:
mode:
authorRoland <rk@rkuhn.info>2012-09-12 14:28:39 +0200
committerRoland <rk@rkuhn.info>2012-09-12 14:28:39 +0200
commit13ff968b9d273e03bfa226ca1ec52949391a6b68 (patch)
tree51e64bff6fb38fa212b7e187ee4f0a02be1e3e23 /test/files/neg/t6258.scala
parent300803606ebca352955e945cf468a0c2bfc83b9c (diff)
parentd9a4e94f8716b810e8122c6494b1718410238668 (diff)
downloadscala-13ff968b9d273e03bfa226ca1ec52949391a6b68.tar.gz
scala-13ff968b9d273e03bfa226ca1ec52949391a6b68.tar.bz2
scala-13ff968b9d273e03bfa226ca1ec52949391a6b68.zip
Merge remote-tracking branch 'origin/2.10.x' into fix-duration-issues-RK
Diffstat (limited to 'test/files/neg/t6258.scala')
-rw-r--r--test/files/neg/t6258.scala25
1 files changed, 25 insertions, 0 deletions
diff --git a/test/files/neg/t6258.scala b/test/files/neg/t6258.scala
new file mode 100644
index 0000000000..5046a4750a
--- /dev/null
+++ b/test/files/neg/t6258.scala
@@ -0,0 +1,25 @@
+object Test {
+ val f : PartialFunction[_, Int] = { case a : Int => a } // undefined param
+
+ def foo[A](pf: PartialFunction[A, Int]) {};
+ foo { case a : Int => a } // undefined param
+
+ val g : PartialFunction[Int, _] = { case a : Int => a } // okay
+}
+
+
+// Another variation, seen in the wild with Specs2.
+class X {
+ trait Matcher[-T]
+
+ def bar[T](m: Matcher[T]) = null
+ def bar[T](i: Int) = null
+
+ def foo[T](p: PartialFunction[T, Any]): Matcher[T] = null
+
+ case class M[X](a: X)
+
+ bar[M[Any]] (foo { // undefined param
+ case M(_) => null
+ })
+}