diff options
author | Grzegorz Kossakowski <grzegorz.kossakowski@gmail.com> | 2014-02-10 18:27:17 +0100 |
---|---|---|
committer | Grzegorz Kossakowski <grzegorz.kossakowski@gmail.com> | 2014-02-10 18:27:17 +0100 |
commit | 6c73837668cb961b50f5f523aa0a5d6fe4d849c3 (patch) | |
tree | 9865c31c7a1acb7548048eefb0af1054f3c6639b /test/files/run | |
parent | 4ffbb06566fab0fe4dc2ed00800b13656cc8fea3 (diff) | |
parent | d6b1e6e4ff1cb477e9b26ba7e1a02d1ea98fa132 (diff) | |
download | scala-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/run')
-rw-r--r-- | test/files/run/t6260-delambdafy.check | 4 | ||||
-rw-r--r-- | test/files/run/t6260-delambdafy.flags | 1 | ||||
-rw-r--r-- | test/files/run/t6260-delambdafy.scala | 12 | ||||
-rw-r--r-- | test/files/run/t6260c.check | 5 | ||||
-rw-r--r-- | test/files/run/t6260c.scala | 17 |
5 files changed, 39 insertions, 0 deletions
diff --git a/test/files/run/t6260-delambdafy.check b/test/files/run/t6260-delambdafy.check new file mode 100644 index 0000000000..b2a7bed988 --- /dev/null +++ b/test/files/run/t6260-delambdafy.check @@ -0,0 +1,4 @@ +f(C@2e) + +Test$lambda$1$$apply +apply diff --git a/test/files/run/t6260-delambdafy.flags b/test/files/run/t6260-delambdafy.flags new file mode 100644 index 0000000000..48b438ddf8 --- /dev/null +++ b/test/files/run/t6260-delambdafy.flags @@ -0,0 +1 @@ +-Ydelambdafy:method diff --git a/test/files/run/t6260-delambdafy.scala b/test/files/run/t6260-delambdafy.scala new file mode 100644 index 0000000000..056b1edd4e --- /dev/null +++ b/test/files/run/t6260-delambdafy.scala @@ -0,0 +1,12 @@ +class C[A](private val a: Any) extends AnyVal + +object Test { + val f = (x: C[Any]) => {println(s"f($x)"); x} + def main(args: Array[String]) { + f(new C(".")) + val methods = f.getClass.getDeclaredMethods.map(_.getName).sorted + println("") + println(methods.mkString("\n")) + } +} + diff --git a/test/files/run/t6260c.check b/test/files/run/t6260c.check new file mode 100644 index 0000000000..1a57f2d741 --- /dev/null +++ b/test/files/run/t6260c.check @@ -0,0 +1,5 @@ +f(C@2e) + +Test$$anonfun$$apply +apply +g(C@2e) diff --git a/test/files/run/t6260c.scala b/test/files/run/t6260c.scala new file mode 100644 index 0000000000..845dc157b7 --- /dev/null +++ b/test/files/run/t6260c.scala @@ -0,0 +1,17 @@ +class C[A](private val a: Any) extends AnyVal + +object Test { + val f = (x: C[Any]) => {println(s"f($x)"); x} + trait T[A] { + def apply(a: A): A + } + val g = new T[C[Any]] { def apply(a: C[Any]) = { println(s"g($a)"); a } } + def main(args: Array[String]) { + f(new C(".")) + val methods = f.getClass.getDeclaredMethods.map(_.getName).sorted + println("") + println(methods.mkString("\n")) + g.apply(new C(".")) + } +} + |