Skip to content

Commit 273c0bd

Browse files
committed
Dataflow: Delete dead code.
1 parent 1787bcb commit 273c0bd

File tree

1 file changed

+0
-53
lines changed

1 file changed

+0
-53
lines changed

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

Lines changed: 0 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -4175,49 +4175,6 @@ module MakeImpl<LocationSig Location, InputSig<Location> Lang> {
41754175
)
41764176
}
41774177

4178-
private newtype TSummaryCtx =
4179-
TSummaryCtxNone() or
4180-
TSummaryCtxSome(ParamNodeEx p, FlowState state, DataFlowType t, AccessPath ap) {
4181-
exists(AccessPathApprox apa | ap.getApprox() = apa |
4182-
Stage5::parameterMayFlowThrough(p, apa) and
4183-
Stage5::fwdFlow(p, state, _, _, Option<DataFlowType>::some(t), _, _, apa, _) and
4184-
Stage5::revFlow(p, state, _)
4185-
)
4186-
}
4187-
4188-
/**
4189-
* A context for generating flow summaries. This represents flow entry through
4190-
* a specific parameter with an access path of a specific shape.
4191-
*
4192-
* Summaries are only created for parameters that may flow through.
4193-
*/
4194-
abstract private class SummaryCtx extends TSummaryCtx {
4195-
abstract string toString();
4196-
}
4197-
4198-
/** A summary context from which no flow summary can be generated. */
4199-
private class SummaryCtxNone extends SummaryCtx, TSummaryCtxNone {
4200-
override string toString() { result = "<none>" }
4201-
}
4202-
4203-
/** A summary context from which a flow summary can be generated. */
4204-
private class SummaryCtxSome extends SummaryCtx, TSummaryCtxSome {
4205-
private ParamNodeEx p;
4206-
private FlowState s;
4207-
private DataFlowType t;
4208-
private AccessPath ap;
4209-
4210-
SummaryCtxSome() { this = TSummaryCtxSome(p, s, t, ap) }
4211-
4212-
ParamNodeEx getParamNode() { result = p }
4213-
4214-
private string ppTyp() { result = t.toString() and result != "" }
4215-
4216-
override string toString() { result = p + concat(" : " + this.ppTyp()) + " " + ap }
4217-
4218-
Location getLocation() { result = p.getLocation() }
4219-
}
4220-
42214178
pragma[nomagic]
42224179
private predicate stage5ConsCand(Content c, DataFlowType t, AccessPathFront apf, int len) {
42234180
Stage5::consCand(c, t, any(AccessPathApprox ap | ap.getFront() = apf and ap.len() = len - 1))
@@ -4448,16 +4405,6 @@ module MakeImpl<LocationSig Location, InputSig<Location> Lang> {
44484405

44494406
/** Gets a textual representation of this access path. */
44504407
abstract string toString();
4451-
4452-
/** Holds if `node`, which is the target of a store step, clears data stored in this access path. */
4453-
pragma[nomagic]
4454-
predicate storeTargetIsClearedAt(NodeEx node) {
4455-
exists(AccessPathApprox apa |
4456-
apa = this.getApprox() and
4457-
Stage5::revFlowAp(node, apa) and
4458-
Stage4Param::clearContent(node, apa.getHead(), true)
4459-
)
4460-
}
44614408
}
44624409

44634410
private class AccessPathNil extends AccessPath, TAccessPathNil {

0 commit comments

Comments
 (0)