Skip to content

Commit 0d14b94

Browse files
committed
C#: Avoid recomputing ControlFlowTree::Range outside the CFG construction stage
1 parent 088a1a9 commit 0d14b94

File tree

3 files changed

+5
-5
lines changed

3 files changed

+5
-5
lines changed

csharp/ql/src/semmle/code/csharp/controlflow/BasicBlocks.qll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -403,7 +403,7 @@ private module JoinBlockPredecessors {
403403
private import semmle.code.csharp.controlflow.internal.ControlFlowGraphImpl
404404

405405
int getId(JoinBlockPredecessor jbp) {
406-
exists(ControlFlowTree::Range t | ControlFlowTree::idOf(t, result) |
406+
exists(ControlFlowTree::Range_ t | ControlFlowTree::idOf(t, result) |
407407
t = jbp.getFirstNode().getElement()
408408
or
409409
t = jbp.(EntryBasicBlock).getCallable()

csharp/ql/src/semmle/code/csharp/controlflow/internal/ControlFlowGraphImpl.qll

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ class CfgScope extends Element, @top_level_exprorstmt_parent {
7777
}
7878

7979
module ControlFlowTree {
80-
private class Range_ = @callable or @control_flow_element;
80+
class Range_ = @callable or @control_flow_element;
8181

8282
class Range extends Element, Range_ {
8383
Range() { this = getAChild*(any(CfgScope scope)) }
@@ -88,9 +88,9 @@ module ControlFlowTree {
8888
result = p.(AssignOperation).getExpandedAssignment()
8989
}
9090

91-
private predicate id(Range x, Range y) { x = y }
91+
private predicate id(Range_ x, Range_ y) { x = y }
9292

93-
predicate idOf(Range x, int y) = equivalenceRelation(id/2)(x, y)
93+
predicate idOf(Range_ x, int y) = equivalenceRelation(id/2)(x, y)
9494
}
9595

9696
abstract private class ControlFlowTree extends ControlFlowTree::Range {

csharp/ql/src/semmle/code/csharp/dataflow/internal/rangeanalysis/ModulusAnalysisSpecific.qll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ module Private {
4949
}
5050

5151
int getId(PhiInputEdgeBlock bb) {
52-
exists(CfgImpl::ControlFlowTree::Range t | CfgImpl::ControlFlowTree::idOf(t, result) |
52+
exists(CfgImpl::ControlFlowTree::Range_ t | CfgImpl::ControlFlowTree::idOf(t, result) |
5353
t = bb.getFirstNode().getElement()
5454
or
5555
t = bb.(CS::ControlFlow::BasicBlocks::EntryBlock).getCallable()

0 commit comments

Comments
 (0)