Skip to content

Commit fa5555b

Browse files
committed
Unified: Nested type aliases are static members
1 parent a05b3ee commit fa5555b

2 files changed

Lines changed: 4 additions & 4 deletions

File tree

‎unified/ql/lib/codeql/unified/internal/NameBindingPlugin.qll‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -96,9 +96,9 @@ predicate isInstanceMember(Member member) {
9696
*/
9797
predicate isStaticMember(Member member) {
9898
exists(ClassLikeDeclaration cls | cls.getAMember() = member |
99-
not any(NameBindingPlugin p).isInstanceMember(cls, member)
100-
or
101-
member instanceof ConstructorDeclaration
99+
not any(NameBindingPlugin p).isInstanceMember(cls, member) or
100+
member instanceof ConstructorDeclaration or
101+
member instanceof TypeAliasDeclaration
102102
)
103103
or
104104
member = any(TopLevel t).getBody().getAStmt()

‎unified/ql/test/library-tests/static-name-binding/test.swift‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ class A {
1111
let x1: B = nil // $ access=top.B
1212
let x2: A.B = nil // $ access=A access=A.B
1313
let x3: A.B.C = nil // $ access=A access=A.B access=A.B.C
14-
let x4: A.BAlias.C = nil // $ access=A $ MISSING: access=A.BAlias access=A.B.C
14+
let x4: A.BAlias.C = nil // $ access=A access=A.BAlias access=A.B.C
1515

1616
class D {
1717
let x1: B = nil // $ access=top.B

0 commit comments

Comments
 (0)