File tree Expand file tree Collapse file tree
lib/semmle/code/cpp/ir/dataflow/internal
test/library-tests/dataflow/models-as-data Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -10,6 +10,7 @@ private import semmle.code.cpp.ir.ValueNumbering
1010private import semmle.code.cpp.ir.IR
1111private import semmle.code.cpp.controlflow.IRGuards
1212private import semmle.code.cpp.models.interfaces.DataFlow
13+ private import semmle.code.cpp.dataflow.internal.FlowSummaryImpl as FlowSummaryImpl
1314private import DataFlowPrivate
1415private import ModelUtil
1516private import SsaInternals as Ssa
@@ -1965,6 +1966,9 @@ private module Cached {
19651966 // by a function. This allows data to flow 'in' through references returned by a modeled
19661967 // function such as `operator[]`.
19671968 reverseFlow ( nodeFrom , nodeTo )
1969+ or
1970+ // models-as-data summarized flow
1971+ FlowSummaryImpl:: Private:: Steps:: summaryThroughStepValue ( nodeFrom , nodeTo , _)
19681972 }
19691973
19701974 private predicate simpleInstructionLocalFlowStep ( Operand opFrom , Instruction iTo ) {
Original file line number Diff line number Diff line change @@ -132,7 +132,7 @@ void test_summaries() {
132132 sink (madArg0ToReturn (source ())); // $ MISSING: ir
133133 sink (notASummary (source ()));
134134 sink (madArg0ToReturnValueFlow (0 ));
135- sink (madArg0ToReturnValueFlow (source ())); // $ MISSING: ir
135+ sink (madArg0ToReturnValueFlow (source ())); // $ ir
136136
137137 a = source ();
138138 sink (madArg0IndirectToReturn (&a)); // $ MISSING: ir
@@ -159,7 +159,7 @@ void test_summaries() {
159159 // test source + sinks + summaries together
160160
161161 madSinkArg0 (madArg0ToReturn (remoteMadSource ())); // $ MISSING: ir
162- madSinkArg0 (madArg0ToReturnValueFlow (remoteMadSource ())); // $ MISSING: ir
162+ madSinkArg0 (madArg0ToReturnValueFlow (remoteMadSource ())); // $ ir
163163 madSinkArg0 (madArg0IndirectToReturn (remoteMadSourceIndirect ())); // $ MISSING: ir*/
164164}
165165
You can’t perform that action at this time.
0 commit comments