diff --git a/cpp/ql/lib/semmle/code/cpp/models/implementations/Iterator.qll b/cpp/ql/lib/semmle/code/cpp/models/implementations/Iterator.qll index 89658000c8ac3..a016210de5a04 100644 --- a/cpp/ql/lib/semmle/code/cpp/models/implementations/Iterator.qll +++ b/cpp/ql/lib/semmle/code/cpp/models/implementations/Iterator.qll @@ -560,7 +560,7 @@ private class IteratorAssignmentMemberOperatorModel extends IteratorAssignmentMe TaintFunction, SideEffectFunction, AliasFunction { override predicate hasTaintFlow(FunctionInput input, FunctionOutput output) { - input.isParameterDeref(0) and + (input.isParameterDeref(0) or input.isParameter(0)) and output.isQualifierObject() } diff --git a/cpp/ql/test/library-tests/dataflow/taint-tests/taint.expected b/cpp/ql/test/library-tests/dataflow/taint-tests/taint.expected index 2b6ae9bf70e33..0065ae75d21b7 100644 --- a/cpp/ql/test/library-tests/dataflow/taint-tests/taint.expected +++ b/cpp/ql/test/library-tests/dataflow/taint-tests/taint.expected @@ -4,5 +4,4 @@ WARNING: Module DataFlow has been deprecated and may be removed in future (taint WARNING: Module DataFlow has been deprecated and may be removed in future (taint.ql:68,25-33) WARNING: Module TaintTracking has been deprecated and may be removed in future (taint.ql:73,20-33) testFailures -| standalone_iterators.cpp:112:11:112:21 | // $ ast,ir | Missing result:ir= | failures