summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorAdriaan Moors <adriaan@lightbend.com>2017-04-13 09:02:19 -0700
committerGitHub <noreply@github.com>2017-04-13 09:02:19 -0700
commit8a413ba7cc7a32210fc2d734c18032b718035116 (patch)
tree7d7cec3c558bb89db482863c3573cfe049f0affb /test
parent5167b691bbc6eccc671ef3a49c7ecaf3343c0baa (diff)
parent77917e94c70759602be0dae833e798e894999254 (diff)
downloadscala-8a413ba7cc7a32210fc2d734c18032b718035116.tar.gz
scala-8a413ba7cc7a32210fc2d734c18032b718035116.tar.bz2
scala-8a413ba7cc7a32210fc2d734c18032b718035116.zip
Merge pull request #5846 from adriaanm/t10261-2.11
Actually retract clashing synthetic apply/unapply
Diffstat (limited to 'test')
-rw-r--r--test/files/neg/userdefined_apply.flags1
-rw-r--r--test/files/pos/userdefined_apply.flags1
-rw-r--r--test/files/pos/userdefined_apply_poly_overload.flags1
-rw-r--r--test/files/run/t10261.flags1
-rw-r--r--test/files/run/t10261/Companion_1.scala4
-rw-r--r--test/files/run/t10261/Test_2.scala14
6 files changed, 22 insertions, 0 deletions
diff --git a/test/files/neg/userdefined_apply.flags b/test/files/neg/userdefined_apply.flags
new file mode 100644
index 0000000000..0acce1e7ce
--- /dev/null
+++ b/test/files/neg/userdefined_apply.flags
@@ -0,0 +1 @@
+-Xsource:2.12
diff --git a/test/files/pos/userdefined_apply.flags b/test/files/pos/userdefined_apply.flags
new file mode 100644
index 0000000000..0acce1e7ce
--- /dev/null
+++ b/test/files/pos/userdefined_apply.flags
@@ -0,0 +1 @@
+-Xsource:2.12
diff --git a/test/files/pos/userdefined_apply_poly_overload.flags b/test/files/pos/userdefined_apply_poly_overload.flags
new file mode 100644
index 0000000000..0acce1e7ce
--- /dev/null
+++ b/test/files/pos/userdefined_apply_poly_overload.flags
@@ -0,0 +1 @@
+-Xsource:2.12
diff --git a/test/files/run/t10261.flags b/test/files/run/t10261.flags
new file mode 100644
index 0000000000..0acce1e7ce
--- /dev/null
+++ b/test/files/run/t10261.flags
@@ -0,0 +1 @@
+-Xsource:2.12
diff --git a/test/files/run/t10261/Companion_1.scala b/test/files/run/t10261/Companion_1.scala
new file mode 100644
index 0000000000..9b8e2c73b2
--- /dev/null
+++ b/test/files/run/t10261/Companion_1.scala
@@ -0,0 +1,4 @@
+trait Companion[T] {
+ def parse(value: String): Option[T]
+ def apply(value: String): T = parse(value).get
+}
diff --git a/test/files/run/t10261/Test_2.scala b/test/files/run/t10261/Test_2.scala
new file mode 100644
index 0000000000..d7d9fe9a0e
--- /dev/null
+++ b/test/files/run/t10261/Test_2.scala
@@ -0,0 +1,14 @@
+import scala.util.Try
+
+object C extends Companion[C] {
+ def parse(v: String) = if (v.nonEmpty) Some(new C(v)) else None
+}
+
+case class C(value: String)
+
+object Test {
+ def main(args: Array[String]): Unit = {
+ assert(Try{C("")}.isFailure, "Empty value should fail to parse") // check that parse is used to validate input
+ assert(C("a").value == "a", "Unexpected value")
+ }
+}