Skip to content

Commit e695429

Browse files
committed
Address review comments
1 parent c14dcfb commit e695429

File tree

25 files changed

+250
-150
lines changed

25 files changed

+250
-150
lines changed

cpp/ql/lib/semmle/code/cpp/dataflow/internal/DataFlowImpl.qll

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3563,10 +3563,15 @@ private predicate parameterCand(
35633563
pragma[nomagic]
35643564
private predicate pathIntoCallable0(
35653565
PathNodeMid mid, DataFlowCallable callable, int i, CallContext outercc, DataFlowCall call,
3566-
AccessPath ap, AccessPathApprox apa, Configuration config
3566+
AccessPath ap, Configuration config
35673567
) {
3568-
pathIntoArg(mid, i, outercc, call, ap, apa, config) and
3569-
callable = resolveCall(call, outercc)
3568+
exists(AccessPathApprox apa |
3569+
pathIntoArg(mid, pragma[only_bind_into](i), outercc, call, ap, pragma[only_bind_into](apa),
3570+
pragma[only_bind_into](config)) and
3571+
callable = resolveCall(call, outercc) and
3572+
parameterCand(callable, pragma[only_bind_into](i), pragma[only_bind_into](apa),
3573+
pragma[only_bind_into](config))
3574+
)
35703575
}
35713576

35723577
/**
@@ -3579,9 +3584,8 @@ private predicate pathIntoCallable(
35793584
PathNodeMid mid, ParamNodeEx p, CallContext outercc, CallContextCall innercc, SummaryCtx sc,
35803585
DataFlowCall call, Configuration config
35813586
) {
3582-
exists(int i, DataFlowCallable callable, AccessPath ap, AccessPathApprox apa |
3583-
pathIntoCallable0(mid, callable, i, outercc, call, ap, apa, config) and
3584-
parameterCand(callable, i, apa, config) and
3587+
exists(int i, DataFlowCallable callable, AccessPath ap |
3588+
pathIntoCallable0(mid, callable, i, outercc, call, ap, config) and
35853589
p.isParameterOf(callable, i) and
35863590
(
35873591
sc = TSummaryCtxSome(p, ap)

cpp/ql/lib/semmle/code/cpp/dataflow/internal/DataFlowImpl2.qll

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3563,10 +3563,15 @@ private predicate parameterCand(
35633563
pragma[nomagic]
35643564
private predicate pathIntoCallable0(
35653565
PathNodeMid mid, DataFlowCallable callable, int i, CallContext outercc, DataFlowCall call,
3566-
AccessPath ap, AccessPathApprox apa, Configuration config
3566+
AccessPath ap, Configuration config
35673567
) {
3568-
pathIntoArg(mid, i, outercc, call, ap, apa, config) and
3569-
callable = resolveCall(call, outercc)
3568+
exists(AccessPathApprox apa |
3569+
pathIntoArg(mid, pragma[only_bind_into](i), outercc, call, ap, pragma[only_bind_into](apa),
3570+
pragma[only_bind_into](config)) and
3571+
callable = resolveCall(call, outercc) and
3572+
parameterCand(callable, pragma[only_bind_into](i), pragma[only_bind_into](apa),
3573+
pragma[only_bind_into](config))
3574+
)
35703575
}
35713576

35723577
/**
@@ -3579,9 +3584,8 @@ private predicate pathIntoCallable(
35793584
PathNodeMid mid, ParamNodeEx p, CallContext outercc, CallContextCall innercc, SummaryCtx sc,
35803585
DataFlowCall call, Configuration config
35813586
) {
3582-
exists(int i, DataFlowCallable callable, AccessPath ap, AccessPathApprox apa |
3583-
pathIntoCallable0(mid, callable, i, outercc, call, ap, apa, config) and
3584-
parameterCand(callable, i, apa, config) and
3587+
exists(int i, DataFlowCallable callable, AccessPath ap |
3588+
pathIntoCallable0(mid, callable, i, outercc, call, ap, config) and
35853589
p.isParameterOf(callable, i) and
35863590
(
35873591
sc = TSummaryCtxSome(p, ap)

cpp/ql/lib/semmle/code/cpp/dataflow/internal/DataFlowImpl3.qll

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3563,10 +3563,15 @@ private predicate parameterCand(
35633563
pragma[nomagic]
35643564
private predicate pathIntoCallable0(
35653565
PathNodeMid mid, DataFlowCallable callable, int i, CallContext outercc, DataFlowCall call,
3566-
AccessPath ap, AccessPathApprox apa, Configuration config
3566+
AccessPath ap, Configuration config
35673567
) {
3568-
pathIntoArg(mid, i, outercc, call, ap, apa, config) and
3569-
callable = resolveCall(call, outercc)
3568+
exists(AccessPathApprox apa |
3569+
pathIntoArg(mid, pragma[only_bind_into](i), outercc, call, ap, pragma[only_bind_into](apa),
3570+
pragma[only_bind_into](config)) and
3571+
callable = resolveCall(call, outercc) and
3572+
parameterCand(callable, pragma[only_bind_into](i), pragma[only_bind_into](apa),
3573+
pragma[only_bind_into](config))
3574+
)
35703575
}
35713576

35723577
/**
@@ -3579,9 +3584,8 @@ private predicate pathIntoCallable(
35793584
PathNodeMid mid, ParamNodeEx p, CallContext outercc, CallContextCall innercc, SummaryCtx sc,
35803585
DataFlowCall call, Configuration config
35813586
) {
3582-
exists(int i, DataFlowCallable callable, AccessPath ap, AccessPathApprox apa |
3583-
pathIntoCallable0(mid, callable, i, outercc, call, ap, apa, config) and
3584-
parameterCand(callable, i, apa, config) and
3587+
exists(int i, DataFlowCallable callable, AccessPath ap |
3588+
pathIntoCallable0(mid, callable, i, outercc, call, ap, config) and
35853589
p.isParameterOf(callable, i) and
35863590
(
35873591
sc = TSummaryCtxSome(p, ap)

cpp/ql/lib/semmle/code/cpp/dataflow/internal/DataFlowImpl4.qll

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3563,10 +3563,15 @@ private predicate parameterCand(
35633563
pragma[nomagic]
35643564
private predicate pathIntoCallable0(
35653565
PathNodeMid mid, DataFlowCallable callable, int i, CallContext outercc, DataFlowCall call,
3566-
AccessPath ap, AccessPathApprox apa, Configuration config
3566+
AccessPath ap, Configuration config
35673567
) {
3568-
pathIntoArg(mid, i, outercc, call, ap, apa, config) and
3569-
callable = resolveCall(call, outercc)
3568+
exists(AccessPathApprox apa |
3569+
pathIntoArg(mid, pragma[only_bind_into](i), outercc, call, ap, pragma[only_bind_into](apa),
3570+
pragma[only_bind_into](config)) and
3571+
callable = resolveCall(call, outercc) and
3572+
parameterCand(callable, pragma[only_bind_into](i), pragma[only_bind_into](apa),
3573+
pragma[only_bind_into](config))
3574+
)
35703575
}
35713576

35723577
/**
@@ -3579,9 +3584,8 @@ private predicate pathIntoCallable(
35793584
PathNodeMid mid, ParamNodeEx p, CallContext outercc, CallContextCall innercc, SummaryCtx sc,
35803585
DataFlowCall call, Configuration config
35813586
) {
3582-
exists(int i, DataFlowCallable callable, AccessPath ap, AccessPathApprox apa |
3583-
pathIntoCallable0(mid, callable, i, outercc, call, ap, apa, config) and
3584-
parameterCand(callable, i, apa, config) and
3587+
exists(int i, DataFlowCallable callable, AccessPath ap |
3588+
pathIntoCallable0(mid, callable, i, outercc, call, ap, config) and
35853589
p.isParameterOf(callable, i) and
35863590
(
35873591
sc = TSummaryCtxSome(p, ap)

cpp/ql/lib/semmle/code/cpp/dataflow/internal/DataFlowImplLocal.qll

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3563,10 +3563,15 @@ private predicate parameterCand(
35633563
pragma[nomagic]
35643564
private predicate pathIntoCallable0(
35653565
PathNodeMid mid, DataFlowCallable callable, int i, CallContext outercc, DataFlowCall call,
3566-
AccessPath ap, AccessPathApprox apa, Configuration config
3566+
AccessPath ap, Configuration config
35673567
) {
3568-
pathIntoArg(mid, i, outercc, call, ap, apa, config) and
3569-
callable = resolveCall(call, outercc)
3568+
exists(AccessPathApprox apa |
3569+
pathIntoArg(mid, pragma[only_bind_into](i), outercc, call, ap, pragma[only_bind_into](apa),
3570+
pragma[only_bind_into](config)) and
3571+
callable = resolveCall(call, outercc) and
3572+
parameterCand(callable, pragma[only_bind_into](i), pragma[only_bind_into](apa),
3573+
pragma[only_bind_into](config))
3574+
)
35703575
}
35713576

35723577
/**
@@ -3579,9 +3584,8 @@ private predicate pathIntoCallable(
35793584
PathNodeMid mid, ParamNodeEx p, CallContext outercc, CallContextCall innercc, SummaryCtx sc,
35803585
DataFlowCall call, Configuration config
35813586
) {
3582-
exists(int i, DataFlowCallable callable, AccessPath ap, AccessPathApprox apa |
3583-
pathIntoCallable0(mid, callable, i, outercc, call, ap, apa, config) and
3584-
parameterCand(callable, i, apa, config) and
3587+
exists(int i, DataFlowCallable callable, AccessPath ap |
3588+
pathIntoCallable0(mid, callable, i, outercc, call, ap, config) and
35853589
p.isParameterOf(callable, i) and
35863590
(
35873591
sc = TSummaryCtxSome(p, ap)

cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowImpl.qll

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3563,10 +3563,15 @@ private predicate parameterCand(
35633563
pragma[nomagic]
35643564
private predicate pathIntoCallable0(
35653565
PathNodeMid mid, DataFlowCallable callable, int i, CallContext outercc, DataFlowCall call,
3566-
AccessPath ap, AccessPathApprox apa, Configuration config
3566+
AccessPath ap, Configuration config
35673567
) {
3568-
pathIntoArg(mid, i, outercc, call, ap, apa, config) and
3569-
callable = resolveCall(call, outercc)
3568+
exists(AccessPathApprox apa |
3569+
pathIntoArg(mid, pragma[only_bind_into](i), outercc, call, ap, pragma[only_bind_into](apa),
3570+
pragma[only_bind_into](config)) and
3571+
callable = resolveCall(call, outercc) and
3572+
parameterCand(callable, pragma[only_bind_into](i), pragma[only_bind_into](apa),
3573+
pragma[only_bind_into](config))
3574+
)
35703575
}
35713576

35723577
/**
@@ -3579,9 +3584,8 @@ private predicate pathIntoCallable(
35793584
PathNodeMid mid, ParamNodeEx p, CallContext outercc, CallContextCall innercc, SummaryCtx sc,
35803585
DataFlowCall call, Configuration config
35813586
) {
3582-
exists(int i, DataFlowCallable callable, AccessPath ap, AccessPathApprox apa |
3583-
pathIntoCallable0(mid, callable, i, outercc, call, ap, apa, config) and
3584-
parameterCand(callable, i, apa, config) and
3587+
exists(int i, DataFlowCallable callable, AccessPath ap |
3588+
pathIntoCallable0(mid, callable, i, outercc, call, ap, config) and
35853589
p.isParameterOf(callable, i) and
35863590
(
35873591
sc = TSummaryCtxSome(p, ap)

cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowImpl2.qll

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3563,10 +3563,15 @@ private predicate parameterCand(
35633563
pragma[nomagic]
35643564
private predicate pathIntoCallable0(
35653565
PathNodeMid mid, DataFlowCallable callable, int i, CallContext outercc, DataFlowCall call,
3566-
AccessPath ap, AccessPathApprox apa, Configuration config
3566+
AccessPath ap, Configuration config
35673567
) {
3568-
pathIntoArg(mid, i, outercc, call, ap, apa, config) and
3569-
callable = resolveCall(call, outercc)
3568+
exists(AccessPathApprox apa |
3569+
pathIntoArg(mid, pragma[only_bind_into](i), outercc, call, ap, pragma[only_bind_into](apa),
3570+
pragma[only_bind_into](config)) and
3571+
callable = resolveCall(call, outercc) and
3572+
parameterCand(callable, pragma[only_bind_into](i), pragma[only_bind_into](apa),
3573+
pragma[only_bind_into](config))
3574+
)
35703575
}
35713576

35723577
/**
@@ -3579,9 +3584,8 @@ private predicate pathIntoCallable(
35793584
PathNodeMid mid, ParamNodeEx p, CallContext outercc, CallContextCall innercc, SummaryCtx sc,
35803585
DataFlowCall call, Configuration config
35813586
) {
3582-
exists(int i, DataFlowCallable callable, AccessPath ap, AccessPathApprox apa |
3583-
pathIntoCallable0(mid, callable, i, outercc, call, ap, apa, config) and
3584-
parameterCand(callable, i, apa, config) and
3587+
exists(int i, DataFlowCallable callable, AccessPath ap |
3588+
pathIntoCallable0(mid, callable, i, outercc, call, ap, config) and
35853589
p.isParameterOf(callable, i) and
35863590
(
35873591
sc = TSummaryCtxSome(p, ap)

cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowImpl3.qll

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3563,10 +3563,15 @@ private predicate parameterCand(
35633563
pragma[nomagic]
35643564
private predicate pathIntoCallable0(
35653565
PathNodeMid mid, DataFlowCallable callable, int i, CallContext outercc, DataFlowCall call,
3566-
AccessPath ap, AccessPathApprox apa, Configuration config
3566+
AccessPath ap, Configuration config
35673567
) {
3568-
pathIntoArg(mid, i, outercc, call, ap, apa, config) and
3569-
callable = resolveCall(call, outercc)
3568+
exists(AccessPathApprox apa |
3569+
pathIntoArg(mid, pragma[only_bind_into](i), outercc, call, ap, pragma[only_bind_into](apa),
3570+
pragma[only_bind_into](config)) and
3571+
callable = resolveCall(call, outercc) and
3572+
parameterCand(callable, pragma[only_bind_into](i), pragma[only_bind_into](apa),
3573+
pragma[only_bind_into](config))
3574+
)
35703575
}
35713576

35723577
/**
@@ -3579,9 +3584,8 @@ private predicate pathIntoCallable(
35793584
PathNodeMid mid, ParamNodeEx p, CallContext outercc, CallContextCall innercc, SummaryCtx sc,
35803585
DataFlowCall call, Configuration config
35813586
) {
3582-
exists(int i, DataFlowCallable callable, AccessPath ap, AccessPathApprox apa |
3583-
pathIntoCallable0(mid, callable, i, outercc, call, ap, apa, config) and
3584-
parameterCand(callable, i, apa, config) and
3587+
exists(int i, DataFlowCallable callable, AccessPath ap |
3588+
pathIntoCallable0(mid, callable, i, outercc, call, ap, config) and
35853589
p.isParameterOf(callable, i) and
35863590
(
35873591
sc = TSummaryCtxSome(p, ap)

cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowImpl4.qll

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3563,10 +3563,15 @@ private predicate parameterCand(
35633563
pragma[nomagic]
35643564
private predicate pathIntoCallable0(
35653565
PathNodeMid mid, DataFlowCallable callable, int i, CallContext outercc, DataFlowCall call,
3566-
AccessPath ap, AccessPathApprox apa, Configuration config
3566+
AccessPath ap, Configuration config
35673567
) {
3568-
pathIntoArg(mid, i, outercc, call, ap, apa, config) and
3569-
callable = resolveCall(call, outercc)
3568+
exists(AccessPathApprox apa |
3569+
pathIntoArg(mid, pragma[only_bind_into](i), outercc, call, ap, pragma[only_bind_into](apa),
3570+
pragma[only_bind_into](config)) and
3571+
callable = resolveCall(call, outercc) and
3572+
parameterCand(callable, pragma[only_bind_into](i), pragma[only_bind_into](apa),
3573+
pragma[only_bind_into](config))
3574+
)
35703575
}
35713576

35723577
/**
@@ -3579,9 +3584,8 @@ private predicate pathIntoCallable(
35793584
PathNodeMid mid, ParamNodeEx p, CallContext outercc, CallContextCall innercc, SummaryCtx sc,
35803585
DataFlowCall call, Configuration config
35813586
) {
3582-
exists(int i, DataFlowCallable callable, AccessPath ap, AccessPathApprox apa |
3583-
pathIntoCallable0(mid, callable, i, outercc, call, ap, apa, config) and
3584-
parameterCand(callable, i, apa, config) and
3587+
exists(int i, DataFlowCallable callable, AccessPath ap |
3588+
pathIntoCallable0(mid, callable, i, outercc, call, ap, config) and
35853589
p.isParameterOf(callable, i) and
35863590
(
35873591
sc = TSummaryCtxSome(p, ap)

csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowImpl.qll

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3563,10 +3563,15 @@ private predicate parameterCand(
35633563
pragma[nomagic]
35643564
private predicate pathIntoCallable0(
35653565
PathNodeMid mid, DataFlowCallable callable, int i, CallContext outercc, DataFlowCall call,
3566-
AccessPath ap, AccessPathApprox apa, Configuration config
3566+
AccessPath ap, Configuration config
35673567
) {
3568-
pathIntoArg(mid, i, outercc, call, ap, apa, config) and
3569-
callable = resolveCall(call, outercc)
3568+
exists(AccessPathApprox apa |
3569+
pathIntoArg(mid, pragma[only_bind_into](i), outercc, call, ap, pragma[only_bind_into](apa),
3570+
pragma[only_bind_into](config)) and
3571+
callable = resolveCall(call, outercc) and
3572+
parameterCand(callable, pragma[only_bind_into](i), pragma[only_bind_into](apa),
3573+
pragma[only_bind_into](config))
3574+
)
35703575
}
35713576

35723577
/**
@@ -3579,9 +3584,8 @@ private predicate pathIntoCallable(
35793584
PathNodeMid mid, ParamNodeEx p, CallContext outercc, CallContextCall innercc, SummaryCtx sc,
35803585
DataFlowCall call, Configuration config
35813586
) {
3582-
exists(int i, DataFlowCallable callable, AccessPath ap, AccessPathApprox apa |
3583-
pathIntoCallable0(mid, callable, i, outercc, call, ap, apa, config) and
3584-
parameterCand(callable, i, apa, config) and
3587+
exists(int i, DataFlowCallable callable, AccessPath ap |
3588+
pathIntoCallable0(mid, callable, i, outercc, call, ap, config) and
35853589
p.isParameterOf(callable, i) and
35863590
(
35873591
sc = TSummaryCtxSome(p, ap)

0 commit comments

Comments
 (0)