Skip to content

Commit 6d05b40

Browse files
committed
eliminate recursion from GuardControlFlowNode::dominates
1 parent 964b847 commit 6d05b40

1 file changed

Lines changed: 3 additions & 2 deletions

File tree

  • javascript/ql/src/semmle/javascript

javascript/ql/src/semmle/javascript/CFG.qll

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -379,8 +379,9 @@ class GuardControlFlowNode extends SyntheticControlFlowNode, @guard_node {
379379
* is known to hold at `bb`.
380380
*/
381381
predicate dominates(ReachableBasicBlock bb) {
382-
this = bb.getANode() or
383-
dominates(bb.getImmediateDominator())
382+
this = bb.getANode()
383+
or
384+
exists(ReachableBasicBlock prev | prev.strictlyDominates(bb) | this = prev.getANode())
384385
}
385386
}
386387

0 commit comments

Comments
 (0)