aboutsummaryrefslogtreecommitdiff
path: root/tests/neg/valueclasses-impl-restrictions.scala
blob: 9f33b7e7c90f4e8a99e96c59f3bb26634b1376c8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class X1(val s: String) extends AnyVal {
  trait I2 { // error: value class may not define an inner class or trait
   val q: String
   def z = s + q
  }
}

class X2(val s: String) extends AnyVal {
  private[this] class I2(val q: String) // error: value class may not define an inner class or trait

  def y(i: Int) = {
    val i2 = new I2(i.toString)
    i2.q + s
  }
}

class X3(val s: String) extends AnyVal {
  object I3 // error: value class may not define non-parameter field
}