Merge pull request #5204 from erik-krogh/inGuard

Approved by asgerf
This commit is contained in:
CodeQL CI
2021-02-22 02:52:11 -08:00
committed by GitHub

View File

@@ -324,7 +324,11 @@ class VarRefinementContext extends RefinementContext, TVarRefinementContext {
}
/** Holds if `e` is nested inside a guard node. */
private predicate inGuard(Expr e) { e.getParentExpr*() = any(GuardControlFlowNode g).getTest() }
private predicate inGuard(Expr e) {
e = any(GuardControlFlowNode g).getTest()
or
inGuard(e.getParentExpr())
}
/**
* An abstract value of a refinement expression.