Skip to content

Commit 4dbff80

Browse files
hvitvedCopilot
andcommitted
Unified: preserve name fallback for accessor resolution
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent ad5bed0 commit 4dbff80

1 file changed

Lines changed: 9 additions & 2 deletions

File tree

  • unified/ql/lib/codeql/unified/internal/dataflow

‎unified/ql/lib/codeql/unified/internal/dataflow/Content.qll‎

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,11 +104,18 @@ class ContentSet extends TContentSet {
104104
}
105105

106106
module ContentSet {
107-
/** Gets resolved field content for `access`, falling back to name-based content. */
107+
/**
108+
* Gets resolved field content for `access`, falling back to name-based content when resolution
109+
* is missing or includes an accessor.
110+
*/
108111
ContentSet member(Expr access) {
109112
result.asSingleton().asField() = T::resolveFieldAccess(access)
110113
or
111-
not exists(T::resolveFieldAccess(access)) and
114+
(
115+
not exists(T::resolveFieldAccess(access))
116+
or
117+
exists(T::resolveAccessorAccess(access))
118+
) and
112119
exists(string name |
113120
name =
114121
[

0 commit comments

Comments
 (0)