summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorLukas Rytz <lukas.rytz@typesafe.com>2016-03-04 08:07:06 +0100
committerLukas Rytz <lukas.rytz@typesafe.com>2016-03-04 08:07:06 +0100
commitf302963b988a1705a198a5d2f7864842041be193 (patch)
tree9f34715e57f643184cf987fbb871f92eee66f391 /test
parent861e4766da5a2271ae66d5d5fd054f6fe01ac7b9 (diff)
parentf08282946647ec4049af965024b4638a4a55f5fd (diff)
downloadscala-f302963b988a1705a198a5d2f7864842041be193.tar.gz
scala-f302963b988a1705a198a5d2f7864842041be193.tar.bz2
scala-f302963b988a1705a198a5d2f7864842041be193.zip
Merge pull request #5002 from retronym/ticket/9546
SI-9546 Fix regression in rewrite of case apply to constructor call
Diffstat (limited to 'test')
-rw-r--r--test/files/run/t9546.scala13
-rw-r--r--test/files/run/t9546b.scala13
-rw-r--r--test/files/run/t9546c.scala13
-rw-r--r--test/files/run/t9546d.scala16
-rw-r--r--test/files/run/t9546e.scala15
5 files changed, 70 insertions, 0 deletions
diff --git a/test/files/run/t9546.scala b/test/files/run/t9546.scala
new file mode 100644
index 0000000000..7016881084
--- /dev/null
+++ b/test/files/run/t9546.scala
@@ -0,0 +1,13 @@
+package foo {
+ case class Opt[A] private[foo](val get: A) extends AnyVal
+ object Opt {
+ def mkOpt = Opt("")
+ }
+}
+
+object Test {
+ def main(args: Array[String]): Unit = {
+ foo.Opt.mkOpt
+ }
+}
+
diff --git a/test/files/run/t9546b.scala b/test/files/run/t9546b.scala
new file mode 100644
index 0000000000..0b4d2d3fe5
--- /dev/null
+++ b/test/files/run/t9546b.scala
@@ -0,0 +1,13 @@
+package foo {
+ case class Opt[A](val get: A) extends AnyVal {
+ }
+ object Opt {
+ def mkOpt = Opt("")
+ }
+}
+
+object Test {
+ def main(args: Array[String]): Unit = {
+ foo.Opt.mkOpt
+ }
+}
diff --git a/test/files/run/t9546c.scala b/test/files/run/t9546c.scala
new file mode 100644
index 0000000000..ea6a5a36b4
--- /dev/null
+++ b/test/files/run/t9546c.scala
@@ -0,0 +1,13 @@
+package foo {
+ case class Opt[A] private[foo](val get: A)
+ object Opt {
+ def mkOpt = Opt("")
+ }
+}
+
+object Test {
+ def main(args: Array[String]): Unit = {
+ foo.Opt.mkOpt
+ }
+}
+
diff --git a/test/files/run/t9546d.scala b/test/files/run/t9546d.scala
new file mode 100644
index 0000000000..00bf37dc18
--- /dev/null
+++ b/test/files/run/t9546d.scala
@@ -0,0 +1,16 @@
+class X {
+ def test: Any = {
+ object Opt {
+ def mkOpt = Opt("")
+ }
+ case class Opt[A] private[X](val get: A)
+ Opt.mkOpt
+ }
+}
+
+object Test {
+ def main(args: Array[String]): Unit = {
+ new X().test
+ }
+}
+
diff --git a/test/files/run/t9546e.scala b/test/files/run/t9546e.scala
new file mode 100644
index 0000000000..b19d0871aa
--- /dev/null
+++ b/test/files/run/t9546e.scala
@@ -0,0 +1,15 @@
+case class A private (x: Int)
+case class B private (x: Int)(y: Int)
+
+class C {
+ def f = A(1)
+ def g = B(1)(2) // was: constructor B in class B cannot be accessed in class C
+}
+
+object Test {
+ def main(args: Array[String]): Unit = {
+ new C().f
+ new C().g
+ }
+
+}