Skip to content

Commit 927a4fa

Browse files
committed
C++: Remove the non-reference case that we shouldn't need.
1 parent 071b303 commit 927a4fa

File tree

4 files changed

+1
-13
lines changed

4 files changed

+1
-13
lines changed

cpp/ql/src/semmle/code/cpp/models/implementations/StdContainer.qll

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -101,10 +101,8 @@ class StdSequenceContainerAssign extends TaintFunction {
101101
* value type of the container.
102102
*/
103103
int getAValueTypeParameterIndex() {
104-
getParameter(result).getUnspecifiedType() = getDeclaringType().getTemplateArgument(0).(Type).getUnspecifiedType() // i.e. the `T` of this `std::vector<T>`
105-
or
106104
getParameter(result).getUnspecifiedType().(ReferenceType).getBaseType() =
107-
getDeclaringType().getTemplateArgument(0).(Type).getUnspecifiedType()
105+
getDeclaringType().getTemplateArgument(0).(Type).getUnspecifiedType() // i.e. the `T` of this `std::vector<T>`
108106
}
109107

110108
override predicate hasTaintFlow(FunctionInput input, FunctionOutput output) {

cpp/ql/test/library-tests/dataflow/taint-tests/localTaint.expected

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2246,12 +2246,8 @@
22462246
| vector.cpp:237:2:237:3 | ref arg v1 | vector.cpp:249:13:249:14 | v1 | |
22472247
| vector.cpp:237:2:237:3 | ref arg v1 | vector.cpp:249:25:249:26 | v1 | |
22482248
| vector.cpp:237:2:237:3 | ref arg v1 | vector.cpp:277:1:277:1 | v1 | |
2249-
| vector.cpp:237:12:237:14 | 100 | vector.cpp:237:2:237:3 | ref arg v1 | TAINT |
2250-
| vector.cpp:237:17:237:17 | 0 | vector.cpp:237:2:237:3 | ref arg v1 | TAINT |
22512249
| vector.cpp:238:2:238:3 | ref arg v2 | vector.cpp:242:7:242:8 | v2 | |
22522250
| vector.cpp:238:2:238:3 | ref arg v2 | vector.cpp:277:1:277:1 | v2 | |
2253-
| vector.cpp:238:12:238:14 | 100 | vector.cpp:238:2:238:3 | ref arg v2 | TAINT |
2254-
| vector.cpp:238:17:238:30 | call to source | vector.cpp:238:2:238:3 | ref arg v2 | TAINT |
22552251
| vector.cpp:239:2:239:3 | ref arg v3 | vector.cpp:243:7:243:8 | v3 | |
22562252
| vector.cpp:239:2:239:3 | ref arg v3 | vector.cpp:250:13:250:14 | v3 | |
22572253
| vector.cpp:239:2:239:3 | ref arg v3 | vector.cpp:250:25:250:26 | v3 | |
@@ -2318,8 +2314,6 @@
23182314
| vector.cpp:267:28:267:29 | call to vector | vector.cpp:276:2:276:2 | v9 | |
23192315
| vector.cpp:269:3:269:4 | ref arg v7 | vector.cpp:273:8:273:9 | v7 | |
23202316
| vector.cpp:269:3:269:4 | ref arg v7 | vector.cpp:276:2:276:2 | v7 | |
2321-
| vector.cpp:269:13:269:15 | 100 | vector.cpp:269:3:269:4 | ref arg v7 | TAINT |
2322-
| vector.cpp:269:18:269:31 | call to source | vector.cpp:269:3:269:4 | ref arg v7 | TAINT |
23232317
| vector.cpp:270:3:270:4 | ref arg v8 | vector.cpp:274:8:274:9 | v8 | |
23242318
| vector.cpp:270:3:270:4 | ref arg v8 | vector.cpp:276:2:276:2 | v8 | |
23252319
| vector.cpp:270:18:270:35 | call to source | vector.cpp:270:3:270:4 | ref arg v8 | TAINT |

cpp/ql/test/library-tests/dataflow/taint-tests/taint.expected

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -241,9 +241,7 @@
241241
| vector.cpp:171:13:171:13 | call to operator[] | vector.cpp:170:14:170:19 | call to source |
242242
| vector.cpp:180:13:180:13 | call to operator[] | vector.cpp:179:14:179:19 | call to source |
243243
| vector.cpp:201:13:201:13 | call to operator[] | vector.cpp:200:14:200:19 | call to source |
244-
| vector.cpp:242:7:242:8 | v2 | vector.cpp:238:17:238:30 | call to source |
245244
| vector.cpp:243:7:243:8 | v3 | vector.cpp:239:15:239:20 | call to source |
246-
| vector.cpp:273:8:273:9 | v7 | vector.cpp:269:18:269:31 | call to source |
247245
| vector.cpp:274:8:274:9 | v8 | vector.cpp:270:18:270:35 | call to source |
248246
| vector.cpp:275:8:275:9 | v9 | vector.cpp:271:18:271:34 | call to source |
249247
| vector.cpp:285:7:285:8 | v1 | vector.cpp:284:15:284:20 | call to source |

cpp/ql/test/library-tests/dataflow/taint-tests/test_diff.expected

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -177,9 +177,7 @@
177177
| vector.cpp:171:13:171:13 | vector.cpp:170:14:170:19 | AST only |
178178
| vector.cpp:180:13:180:13 | vector.cpp:179:14:179:19 | AST only |
179179
| vector.cpp:201:13:201:13 | vector.cpp:200:14:200:19 | AST only |
180-
| vector.cpp:242:7:242:8 | vector.cpp:238:17:238:30 | AST only |
181180
| vector.cpp:243:7:243:8 | vector.cpp:239:15:239:20 | AST only |
182-
| vector.cpp:273:8:273:9 | vector.cpp:269:18:269:31 | AST only |
183181
| vector.cpp:274:8:274:9 | vector.cpp:270:18:270:35 | AST only |
184182
| vector.cpp:275:8:275:9 | vector.cpp:271:18:271:34 | AST only |
185183
| vector.cpp:285:7:285:8 | vector.cpp:284:15:284:20 | AST only |

0 commit comments

Comments
 (0)