File tree Expand file tree Collapse file tree
unified/ql/test/library-tests/static-name-binding Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -2,18 +2,29 @@ class A {
22 class B {
33 class C { }
44 }
5+
6+ static func f( ) { }
57}
68
7- class D : A { } // $ access=A
8- class E : D . B { } // $ access=D access=A.B
9+ class D : A { // $ access=A
10+ static func f( x: Int ) { } // $ access=Int
11+ }
12+ class E : D . B { } // $ access=D access=A.B
913
1014// Members of base classes can be accessed through derived classes
1115func t1( ) {
12- let x1 : D = nil ; // $ access=D
13- let x2 : D . B = nil ; // $ access=D access=A.B
14- let x3 : D . B . C = nil ; // $ access=D access=A.B access=A.B.C
16+ let x1 : D = nil // $ access=D
17+ let x2 : D . B = nil // $ access=D access=A.B
18+ let x3 : D . B . C = nil // $ access=D access=A.B access=A.B.C
1519
1620 // The base class of 'E' is itself resolved through inheritance
17- let x4 : E = nil ; // $ access=E
18- let x5 : E . C = nil ; // $ access=E access=A.B.C
21+ let x4 : E = nil // $ access=E
22+ let x5 : E . C = nil // $ access=E access=A.B.C
23+
24+ let x6 = A . init ( ) // $ access=A access=A.init
25+ let x7 = D . init ( ) // $ access=D $ MISSING: access=A.init $ SPURIOUS: access=D.init
26+
27+ let x8 = A . f ( ) // $ access=A access=A.f
28+ let x9 = D . f ( ) // $ access=D access=D.f -- type inference should filter away the `D.f` target $ MISSING: access=A.f
29+ let x10 = D . f ( x: 0 ) // $ access=D access=D.f $ MISSING: access=A.f -- type inference should filter away the `A.f` target
1930}
You can’t perform that action at this time.
0 commit comments