summaryrefslogtreecommitdiff
path: root/test/files/run/t3569.scala
blob: eb3b424439e935d291554df46b53500d18502f16 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
object Test {
  final val bippy1 = 1
  final lazy val bippy2 = 2

  lazy val lv = scala.util.Random.nextInt()

  class X(final var x: Int)  {
    final var var1: Int = 0
    final private var var2: Int = 0
    final private[this] var var3: Int = 0

    final val val1: Int = 1
    final private val val2: Int = 1
    final private[this] val val3: Int = 1

    final lazy val lval1: Int = 2
    final private lazy val lval2: Int = 2
    final private[this] lazy val lval3: Int = 2
  }
  case class Y(final var x: Int, final private var y: Int, final val z1: Int, final private val z2: Int) { }

  def f = new X(0).x += 1
  def main(args: Array[String]) {
    f
    val s = new X(0)
    s.x += 1
    println(s.x)

    // under -Xcheckinit there's an additional $init$ field
    (classOf[X].getDeclaredFields map ("" + _)).sorted.filter(_ != "private volatile byte Test$X.bitmap$init$0") foreach println
    (classOf[Y].getDeclaredFields map ("" + _)).sorted foreach println
  }
}