aboutsummaryrefslogtreecommitdiff
path: root/tests/pos-scala2/variances-constr.scala
blob: ee4219b100d9f6c00e8f6688c994b763d7b4cf65 (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
class C[+A] {

  private[this] var y: A = _
  def getY: A = y

  class Inner(x: A) {
    y = x
  }
}

object Test {

  def main(args: Array[String]) = {
    val x = new C[String]
    val y: C[Any] = x
    val i = new y.Inner(1)
    val s: String = x.getY
    println(s)
  }
}

class CC[+A] {
  class Inner {
    def this(a: A) = this()
  }
}