Skip to content

Commit 07fcd81

Browse files
committed
Address review comments
1 parent 1057bb4 commit 07fcd81

File tree

1 file changed

+6
-10
lines changed

1 file changed

+6
-10
lines changed

shared/dataflow/codeql/dataflow/internal/DataFlowImpl.qll

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1722,11 +1722,6 @@ module MakeImpl<LocationSig Location, InputSig<Location> Lang> {
17221722
if ap instanceof ApNil then emptyAp = true else emptyAp = false
17231723
}
17241724

1725-
bindingset[call, c, p, apa]
1726-
private signature predicate callRestrictionSig(
1727-
DataFlowCall call, DataFlowCallable c, ParamNodeEx p, ApApprox apa, boolean emptyAp
1728-
);
1729-
17301725
private signature predicate flowThroughSig();
17311726

17321727
/**
@@ -1737,8 +1732,8 @@ module MakeImpl<LocationSig Location, InputSig<Location> Lang> {
17371732
* need to record the argument that flows into the parameter.
17381733
*
17391734
* For flow through, we do need to record the argument, however, we can restrict
1740-
* this to arguments that may actually flow through, using `flowThroughSig`,
1741-
* which reduces the argument-to-parameter fan-in significantly.
1735+
* this to arguments that may actually flow through, which reduces the
1736+
* argument-to-parameter fan-in significantly.
17421737
*/
17431738
private module FwdFlowIn<flowThroughSig/0 flowThrough> {
17441739
pragma[nomagic]
@@ -1747,14 +1742,14 @@ module MakeImpl<LocationSig Location, InputSig<Location> Lang> {
17471742
ApApprox apa
17481743
) {
17491744
exists(boolean allowsFieldFlow |
1750-
PrevStage::callEdgeArgParam(call, c, arg, p, allowsFieldFlow, apa) and
1751-
if emptyAp = true then apa instanceof PrevStage::ApNil else any()
1745+
PrevStage::callEdgeArgParam(call, c, arg, p, allowsFieldFlow, apa)
17521746
|
17531747
if
17541748
PrevStage::callMayFlowThroughRev(call) and
17551749
PrevStage::parameterMayFlowThrough(p, apa)
17561750
then
17571751
emptyAp = true and
1752+
apa instanceof PrevStage::ApNil and
17581753
flowThrough()
17591754
or
17601755
emptyAp = false and
@@ -1763,7 +1758,8 @@ module MakeImpl<LocationSig Location, InputSig<Location> Lang> {
17631758
else (
17641759
not flowThrough() and
17651760
(
1766-
emptyAp = true
1761+
emptyAp = true and
1762+
apa instanceof PrevStage::ApNil
17671763
or
17681764
emptyAp = false and
17691765
allowsFieldFlow = true

0 commit comments

Comments
 (0)