aboutsummaryrefslogtreecommitdiff
path: root/tests/untried/neg/valueclasses-impl-restrictions.scala
diff options
context:
space:
mode:
Diffstat (limited to 'tests/untried/neg/valueclasses-impl-restrictions.scala')
-rw-r--r--tests/untried/neg/valueclasses-impl-restrictions.scala29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/untried/neg/valueclasses-impl-restrictions.scala b/tests/untried/neg/valueclasses-impl-restrictions.scala
new file mode 100644
index 000000000..f0577a94a
--- /dev/null
+++ b/tests/untried/neg/valueclasses-impl-restrictions.scala
@@ -0,0 +1,29 @@
+class M(val t: Int) extends AnyVal {
+ def lazyString = {
+ object X
+ () => X
+ }
+}
+
+class X1(val s: String) extends AnyVal {
+ trait I2 {
+ val q: String
+ def z = s + q
+ }
+
+ def y(x: X1) = {
+ val i2 = new I2 { val q = x.s } // allowed as of SI-7571
+ i2.z
+
+ { case x => x } : PartialFunction[Int, Int] // allowed
+ }
+}
+
+class X2(val s: String) extends AnyVal {
+ private[this] class I2(val q: String)
+
+ def y(i: Int) = {
+ val i2 = new I2(i.toString)
+ i2.q + s
+ }
+}