C++: Fix further merge conflicts.

This commit is contained in:
Geoffrey White
2024-04-12 19:38:38 +01:00
parent e13b3ed5e7
commit 9302b167d8
2 changed files with 11 additions and 8 deletions

View File

@@ -471,7 +471,7 @@ private module Cached {
cached
predicate sourceNode(DataFlow::Node node, string kind) {
exists(SourceSinkInterpretationInput::InterpretNode n |
isSourceNode(n, kind) and n.asNode() = node
isSourceNode(n, kind, _) and n.asNode() = node // TODO
)
}
@@ -482,7 +482,7 @@ private module Cached {
cached
predicate sinkNode(DataFlow::Node node, string kind) {
exists(SourceSinkInterpretationInput::InterpretNode n |
isSinkNode(n, kind) and n.asNode() = node
isSinkNode(n, kind, _) and n.asNode() = node // TODO
)
}
}
@@ -518,7 +518,7 @@ private class SummarizedCallableAdapter extends SummarizedCallable {
)
}
override predicate propagatesFlow(string input, string output, boolean preservesValue) {
override predicate propagatesFlow(string input, string output, boolean preservesValue, string model) {
exists(string kind |
this.relevantSummaryElementManual(input, output, kind)
or
@@ -526,7 +526,8 @@ private class SummarizedCallableAdapter extends SummarizedCallable {
this.relevantSummaryElementGenerated(input, output, kind)
|
if kind = "value" then preservesValue = true else preservesValue = false
)
) and
model = "" // TODO
}
override predicate hasProvenance(Provenance provenance) {

View File

@@ -120,13 +120,14 @@ module SourceSinkInterpretationInput implements
* `output`, kind `kind`, and provenance `provenance`.
*/
predicate sourceElement(
SourceOrSinkElement e, string output, string kind, Public::Provenance provenance
SourceOrSinkElement e, string output, string kind, Public::Provenance provenance, string model
) {
exists(
string namespace, string type, boolean subtypes, string name, string signature, string ext
|
sourceModel(namespace, type, subtypes, name, signature, ext, output, kind, provenance) and
e = interpretElement(namespace, type, subtypes, name, signature, ext)
e = interpretElement(namespace, type, subtypes, name, signature, ext) and
model = "" // TODO
)
}
@@ -135,13 +136,14 @@ module SourceSinkInterpretationInput implements
* `input`, kind `kind` and provenance `provenance`.
*/
predicate sinkElement(
SourceOrSinkElement e, string input, string kind, Public::Provenance provenance
SourceOrSinkElement e, string input, string kind, Public::Provenance provenance, string model
) {
exists(
string package, string type, boolean subtypes, string name, string signature, string ext
|
sinkModel(package, type, subtypes, name, signature, ext, input, kind, provenance) and
e = interpretElement(package, type, subtypes, name, signature, ext)
e = interpretElement(package, type, subtypes, name, signature, ext) and
model = "" // TODO
)
}