Python: DataFlowPrivate.qll annotations

This commit is contained in:
Taus
2026-01-30 13:34:05 +00:00
parent bd71db87be
commit 7ea96c43ec

View File

@@ -1,3 +1,6 @@
overlay[local?]
module;
private import python
private import DataFlowPublic
private import semmle.python.essa.SsaCompute
@@ -39,6 +42,7 @@ predicate isArgumentNode(ArgumentNode arg, DataFlowCall c, ArgumentPosition pos)
//--------
// Nodes
//--------
overlay[local]
predicate isExpressionNode(ControlFlowNode node) { node.getNode() instanceof Expr }
// =============================================================================
@@ -111,6 +115,7 @@ class SyntheticPreUpdateNode extends Node, TSyntheticPreUpdateNode {
* func = foo if <cond> else bar
* func(1, 2, 3)
*/
overlay[local]
class SynthStarArgsElementParameterNode extends ParameterNodeImpl,
TSynthStarArgsElementParameterNode
{
@@ -241,6 +246,7 @@ private predicate dictSplatParameterNodeClearStep(ParameterNode n, DictionaryEle
* (c) since the synthesized nodes are hidden, the reported data-flow paths will be
* collapsed anyway.
*/
overlay[local]
class SynthDictSplatParameterNode extends ParameterNodeImpl, TSynthDictSplatParameterNode {
DataFlowCallable callable;