python: exclude nonlocals from query

This commit is contained in:
Rasmus Lerchedahl Petersen
2023-03-20 13:34:39 +01:00
parent 9b7a20f4ad
commit 5f438e433d
2 changed files with 1 additions and 2 deletions

View File

@@ -15,7 +15,7 @@ import Undefined
import semmle.python.pointsto.PointsTo
predicate uninitialized_local(NameNode use) {
exists(FastLocalVariable local | use.uses(local) or use.deletes(local) | not local.escapes()) and
exists(FastLocalVariable local | use.uses(local) or use.deletes(local) | not local.escapes() and not local = any(Nonlocal nl).getAVariable()) and
(
any(Uninitialized uninit).taints(use) and
PointsToInternal::reachableBlock(use.getBasicBlock(), _)