summaryrefslogtreecommitdiff
path: root/test/files/pos/delambdafy_t6260_method.scala
diff options
context:
space:
mode:
authorGrzegorz Kossakowski <grzegorz.kossakowski@gmail.com>2014-02-10 18:27:17 +0100
committerGrzegorz Kossakowski <grzegorz.kossakowski@gmail.com>2014-02-10 18:27:17 +0100
commit6c73837668cb961b50f5f523aa0a5d6fe4d849c3 (patch)
tree9865c31c7a1acb7548048eefb0af1054f3c6639b /test/files/pos/delambdafy_t6260_method.scala
parent4ffbb06566fab0fe4dc2ed00800b13656cc8fea3 (diff)
parentd6b1e6e4ff1cb477e9b26ba7e1a02d1ea98fa132 (diff)
downloadscala-6c73837668cb961b50f5f523aa0a5d6fe4d849c3.tar.gz
scala-6c73837668cb961b50f5f523aa0a5d6fe4d849c3.tar.bz2
scala-6c73837668cb961b50f5f523aa0a5d6fe4d849c3.zip
Merge pull request #3428 from retronym/ticket/6260
SI-6260 Avoid double-def error with lambdas over value classes
Diffstat (limited to 'test/files/pos/delambdafy_t6260_method.scala')
-rw-r--r--test/files/pos/delambdafy_t6260_method.scala17
1 files changed, 17 insertions, 0 deletions
diff --git a/test/files/pos/delambdafy_t6260_method.scala b/test/files/pos/delambdafy_t6260_method.scala
new file mode 100644
index 0000000000..93b5448227
--- /dev/null
+++ b/test/files/pos/delambdafy_t6260_method.scala
@@ -0,0 +1,17 @@
+class Box[X](val x: X) extends AnyVal {
+ def map[Y](f: X => Y): Box[Y] =
+ ((bx: Box[X]) => new Box(f(bx.x)))(this)
+}
+
+object Test {
+ def map2[X, Y](self: Box[X], f: X => Y): Box[Y] =
+ ((bx: Box[X]) => new Box(f(bx.x)))(self)
+
+ def main(args: Array[String]) {
+ val f = (x: Int) => x + 1
+ val g = (x: String) => x + x
+
+ map2(new Box(42), f)
+ new Box("abc") map g
+ }
+}