Skip to content

Commit 2b481bb

Browse files
committed
Swift: Model Sequence.enumerated() as well.
1 parent 14031bf commit 2b481bb

File tree

2 files changed

+2
-1
lines changed
  • swift/ql
    • lib/codeql/swift/frameworks/StandardLibrary
    • test/library-tests/dataflow/taint/libraries

2 files changed

+2
-1
lines changed

swift/ql/lib/codeql/swift/frameworks/StandardLibrary/Sequence.qll

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ private class SequenceSummaries extends SummaryModelCsv {
5050
";Sequence;true;withContiguousStorageIfAvailable(_:);;;Argument[-1].CollectionElement;Argument[0].Parameter[0].CollectionElement;value",
5151
";Sequence;true;withContiguousStorageIfAvailable(_:);;;Argument[0].ReturnValue;ReturnValue.OptionalSome;value",
5252
";Sequence;true;forEach(_:);;;Argument[-1].CollectionElement;Argument[0].Parameter[0];value",
53+
";Sequence;true;enumerated();;;Argument[-1].CollectionElement;ReturnValue.CollectionElement.TupleElement[1];value",
5354
";Sequence;true;makeIterator();;;Argument[-1].CollectionElement;ReturnValue.CollectionElement;value",
5455
";Sequence;true;min();;;Argument[-1].CollectionElement;ReturnValue.OptionalSome;taint",
5556
";Sequence;true;min(by:);;;Argument[-1].CollectionElement;ReturnValue.OptionalSome;taint",

swift/ql/test/library-tests/dataflow/taint/libraries/set.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ func testSet(ix: Int) {
3434
}
3535
for (ix, elem) in taintedSet.enumerated() {
3636
sink(arg: ix)
37-
sink(arg: elem) // $ MISSING: tainte=t1
37+
sink(arg: elem) // $ tainted=t1
3838
}
3939
taintedSet.forEach {
4040
elem in

0 commit comments

Comments
 (0)