summaryrefslogtreecommitdiff
path: root/test/files/pos/t5217.scala
blob: 1fe3f5696fcb5c1081f6dc50c5b7edfeaf35b334 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// private types and terms of companion module are
// available in scope of ctor params.
// before 2.10.1, class B in object A cannot be accessed in object A
object A {
  private class B
  private val b: B = new B
  private type C = Int
  def apply(): A = new A()
}
// if not private, then default arg results in:
// private class B escapes its defining scope as part of type A.B
class A private (b: A.B = A.b, c: A.C = 42)

object C {
  private class B
}
class C(b: C.B)