Skip to content

Commit ef0370b

Browse files
committed
C++: Respond to review comments.
1 parent afc0d0a commit ef0370b

File tree

4 files changed

+19
-8
lines changed

4 files changed

+19
-8
lines changed

cpp/ql/lib/ext/std.format.model.yml

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,12 @@ extensions:
33
pack: codeql/cpp-all
44
extensible: summaryModel
55
data: # namespace, type, subtypes, name, signature, ext, input, output, kind, provenance
6-
- ["std", "", False, "format<Args>", "(format_string,Args &&)", "", "Argument[*1]", "ReturnValue.Element[@]", "taint", "manual"]
7-
- ["std", "", False, "format<Args>", "(format_string,Args &&)", "", "Argument[*2]", "ReturnValue.Element[@]", "taint", "manual"]
8-
- ["std", "", False, "format<Args>", "(format_string,Args &&)", "", "Argument[*3]", "ReturnValue.Element[@]", "taint", "manual"]
9-
- ["std", "", False, "format<Args>", "(format_string,Args &&)", "", "Argument[*4]", "ReturnValue.Element[@]", "taint", "manual"]
10-
- ["std", "", False, "format<Args>", "(format_string,Args &&)", "", "Argument[*5]", "ReturnValue.Element[@]", "taint", "manual"]
11-
- ["std", "", False, "format<Args>", "(format_string,Args &&)", "", "Argument[*6]", "ReturnValue.Element[@]", "taint", "manual"]
12-
- ["std", "", False, "format<Args>", "(format_string,Args &&)", "", "Argument[*7]", "ReturnValue.Element[@]", "taint", "manual"]
13-
- ["std", "", False, "format<Args>", "(format_string,Args &&)", "", "Argument[*8]", "ReturnValue.Element[@]", "taint", "manual"]
6+
- ["std", "", False, "format<Args>", "(format_string,Args &&)", "", "Argument[0]", "ReturnValue", "taint", "manual"]
7+
- ["std", "", False, "format<Args>", "(format_string,Args &&)", "", "Argument[*1]", "ReturnValue.Element", "taint", "manual"]
8+
- ["std", "", False, "format<Args>", "(format_string,Args &&)", "", "Argument[*2]", "ReturnValue.Element", "taint", "manual"]
9+
- ["std", "", False, "format<Args>", "(format_string,Args &&)", "", "Argument[*3]", "ReturnValue.Element", "taint", "manual"]
10+
- ["std", "", False, "format<Args>", "(format_string,Args &&)", "", "Argument[*4]", "ReturnValue.Element", "taint", "manual"]
11+
- ["std", "", False, "format<Args>", "(format_string,Args &&)", "", "Argument[*5]", "ReturnValue.Element", "taint", "manual"]
12+
- ["std", "", False, "format<Args>", "(format_string,Args &&)", "", "Argument[*6]", "ReturnValue.Element", "taint", "manual"]
13+
- ["std", "", False, "format<Args>", "(format_string,Args &&)", "", "Argument[*7]", "ReturnValue.Element", "taint", "manual"]
14+
- ["std", "", False, "format<Args>", "(format_string,Args &&)", "", "Argument[*8]", "ReturnValue.Element", "taint", "manual"]

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

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -161,4 +161,7 @@ void test2()
161161
void test_format() {
162162
auto s = std::format("{}", string::source());
163163
sink(s); // $ ir MISSING: ast
164+
165+
auto s2 = std::format(string::source());
166+
sink(s2); // $ ir MISSING: ast
164167
}

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -449,6 +449,8 @@ WARNING: module 'TaintTracking' has been deprecated and may be removed in future
449449
| format.cpp:158:26:158:26 | 2 | format.cpp:158:13:158:26 | ... / ... | TAINT |
450450
| format.cpp:162:12:162:22 | call to format | format.cpp:163:8:163:8 | s | |
451451
| format.cpp:162:24:162:27 | {} | format.cpp:162:24:162:27 | call to basic_format_string | TAINT |
452+
| format.cpp:165:13:165:23 | call to format | format.cpp:166:8:166:9 | s2 | |
453+
| format.cpp:165:25:165:38 | call to source | format.cpp:165:25:165:40 | call to basic_format_string | TAINT |
452454
| map.cpp:21:28:21:28 | call to pair | map.cpp:23:2:23:2 | a | |
453455
| map.cpp:21:28:21:28 | call to pair | map.cpp:24:7:24:7 | a | |
454456
| map.cpp:21:28:21:28 | call to pair | map.cpp:25:7:25:7 | a | |

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

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -262,6 +262,8 @@ signatureMatches
262262
| stl.h:628:38:628:43 | insert | (InputIt,InputIt) | vector | assign<InputIt> | 0 |
263263
| stl.h:628:38:628:43 | insert | (InputIt,InputIt) | vector | assign<InputIt> | 1 |
264264
| stl.h:678:33:678:38 | format | (format_string,Args &&) | | format<Args> | 0 |
265+
| stl.h:678:33:678:38 | format | (format_string,Args &&) | | format<Args> | 0 |
266+
| stl.h:678:33:678:38 | format | (format_string,Args &&) | | format<Args> | 1 |
265267
| stl.h:678:33:678:38 | format | (format_string,Args &&) | | format<Args> | 1 |
266268
getSignatureParameterName
267269
| (InputIt,InputIt) | deque | assign<InputIt> | 0 | func:0 |
@@ -722,7 +724,10 @@ getParameterTypeName
722724
| stl.h:639:12:639:15 | find | 0 | const key_type & |
723725
| stl.h:641:28:641:38 | equal_range | 0 | const key_type & |
724726
| stl.h:671:21:671:39 | basic_format_string | 0 | const func:0 & |
727+
| stl.h:671:21:671:39 | basic_format_string | 0 | const func:0 & |
725728
| stl.h:678:33:678:38 | format | 0 | format_string |
729+
| stl.h:678:33:678:38 | format | 0 | format_string |
730+
| stl.h:678:33:678:38 | format | 1 | func:0 && |
726731
| stl.h:678:33:678:38 | format | 1 | func:0 && |
727732
| stringstream.cpp:18:6:18:9 | sink | 0 | const basic_ostream> & |
728733
| stringstream.cpp:21:6:21:9 | sink | 0 | const basic_istream> & |

0 commit comments

Comments
 (0)