PS: Add an edge from the root node to automatic variables, and from a member read qualifier to a read.

This commit is contained in:
Mathias Vorreiter Pedersen
2025-04-03 20:30:52 +01:00
parent 4b14e5e7ec
commit 4df449d4b0

View File

@@ -527,8 +527,18 @@ module API {
pred = MkNamespaceOfTypeNameNode(typeName) and
succ = getForwardStartNode(typeName)
)
// or
// TODO: Handle getAMember when the predecessor is a MkUsingNode?
or
pred = MkRoot() and
exists(DataFlow::AutomaticVariableNode automatic |
automatic.getName() = name and
succ = getForwardStartNode(automatic)
)
or
exists(MemberExprReadAccess read |
read.getMemberName().toLowerCase() = name and
pred = getForwardEndNode(getALocalSourceStrict(getNodeFromExpr(read.getQualifier()))) and
succ = getForwardStartNode(getNodeFromExpr(read))
)
}
cached