aboutsummaryrefslogtreecommitdiff
path: root/test/test/nesting.sc
blob: a6fc924320a0eaa0b1c1abb357a305a91276743a (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
package dotty.tools.dotc.core

object nesting {
  class C {
  
    class D {
    	private def x = "D"
    	def show = x
    	class E {
    		println(x)
    	}
    }
    
    val foo: D = {
    	class D extends C.this.D {
    		private def x = "foo.D"
    		class E {
    			println(x)
    		}
      }
      new D
    }
  }
  
  val c = new C                                   //> c  : dotty.tools.dotc.core.nesting.C = dotty.tools.dotc.core.nesting$C@1a84d
                                                  //| a23
  val d = c.foo                                   //> d  : dotty.tools.dotc.core.nesting.c.D = dotty.tools.dotc.core.nesting$C$D$1
                                                  //| @2705d88a
  d.show                                          //> res0: String = foo.D
  
}