Paolo Tranquilli
631156dbc6
Swift: extract Nested- and PrimaryArchetypeType
2022-06-24 16:28:17 +02:00
Geoffrey White
911d30bd9a
Swift: Proper query message.
2022-06-23 17:12:02 +01:00
Mathias Vorreiter Pedersen
9b587843ff
Merge pull request #9669 from rdmarsh2/rdmarsh2/swift/dataflow-lambda-flow
...
Swift: implement LambdaCall in dataflow library
2022-06-23 10:38:45 +01:00
Geoffrey White
19026e9ed5
Swift: Work around toString change.
2022-06-22 19:16:09 +01:00
Geoffrey White
da7f49155d
Swift: Use dataflow.
2022-06-22 19:16:09 +01:00
Geoffrey White
28d801fde3
Swift: CWE-135 query sources and sinks.
2022-06-22 19:16:08 +01:00
Robert Marsh
42929a70e8
Swift: implement LambdaCall in dataflow library
2022-06-22 17:30:54 +00:00
Paolo Tranquilli
e25f22da26
Merge main into redsun82/swift-extraction
2022-06-22 16:54:52 +02:00
Paolo Tranquilli
1fc2bc4938
Swift: really fix tests
2022-06-22 16:15:02 +02:00
Mathias Vorreiter Pedersen
a293fd1f3e
Merge pull request #9638 from geoffw0/stringlengthconflation
...
Swift: String length conflation tests (for CVE-2022-23625)
2022-06-22 14:39:34 +01:00
Geoffrey White
e07df0d0c8
Swift: make setters private in test.
2022-06-22 14:13:30 +01:00
Geoffrey White
f9e1e630f7
Swift: more accurate NSObject / NSString hierarchy in test.
2022-06-22 12:36:40 +01:00
Paolo Tranquilli
3ed783df7f
Swift: fix tests
2022-06-22 12:14:47 +02:00
Paolo Tranquilli
1e4ac44362
Swift: some expression extractions
2022-06-21 17:31:40 +02:00
Geoffrey White
8989210995
Swift: Fix some details so that the test works.
2022-06-21 14:22:35 +01:00
Mathias Vorreiter Pedersen
e2478d1106
Swift: 'getStaticCallTarget' should also return things like 'ConstructorDecl's.
2022-06-21 09:35:56 +01:00
Mathias Vorreiter Pedersen
a1bf448e56
Swift: Accept more test changes.
2022-06-20 15:28:06 +01:00
Mathias Vorreiter Pedersen
c049988116
Swift: Accept test changes.
2022-06-20 14:57:16 +01:00
Geoffrey White
30557ebe55
Swift: Test for string length conflation query.
2022-06-20 14:38:52 +01:00
Paolo Tranquilli
95a6c5d4e5
Swift: fix emission of synthesized entities
...
This was temporarily broken as we were skipping full emission of all
entities without any valid location.
We now rely on `decl->getDeclContext()->getParentSourceFile()` which is
more robust.
2022-06-20 13:00:05 +02:00
Mathias Vorreiter Pedersen
12d27ec580
Swift: Modify 'toString' in 'OtherConstructorDeclRefExpr' to properly reflect that it's a reference and not a call.
2022-06-20 09:59:23 +01:00
Paolo Tranquilli
a91c94c38b
Swift: temporarily disable failing test
2022-06-20 10:32:19 +02:00
Paolo Tranquilli
0957801588
Merge pull request #9521 from github/redsun82/swift-qltestgen
...
Swift: generated extractor tests
2022-06-15 15:39:35 +02:00
Paolo Tranquilli
78deff68a3
Swift: add generated enum tests
2022-06-15 14:50:33 +02:00
Paolo Tranquilli
fec15fb60a
Merge main into redsun82/swift-qltestgen
2022-06-15 09:32:39 +02:00
Mathias Vorreiter Pedersen
2fdb3d638b
Merge branch 'main' into closure-expr-as-cfg-callable
2022-06-15 08:16:56 +01:00
Paolo Tranquilli
86ebb0bb68
Swift: fix qltest skipping and skip isUnknown
...
Also remove obsolete accessor and function hand-written tests.
2022-06-15 09:16:55 +02:00
Mathias Vorreiter Pedersen
b0c66dda3a
Merge pull request #9556 from MathiasVP/swift-extract-closure-params
...
Swift: Extract closure parameters
2022-06-15 08:07:08 +01:00
Mathias Vorreiter Pedersen
ef224b9c1d
Swift: Mark non-auto closures as callables in the CFG library.
2022-06-14 21:05:48 +01:00
Mathias Vorreiter Pedersen
6c96f71d0c
Swift: Autogenerate and accept test changes.
2022-06-14 20:39:18 +01:00
Paolo Tranquilli
de52f9be7b
Swift: generated extractor tests
2022-06-14 18:01:29 +02:00
Paolo Tranquilli
b6342ba2a0
Swift: limit Cfg.ql to test source locations
2022-06-14 14:15:48 +02:00
Alex Denisov
26d3c4a7fc
Swift: extract system and builtin modules separately
2022-06-14 14:15:48 +02:00
Alex Denisov
311dcfa230
Swift: remove toString from UnknownElement
...
Another attempt to remove flakiness
2022-06-14 13:37:17 +02:00
Alex Denisov
9681358a6d
Swift: extract OtherConstructorDeclRefExpr
2022-06-14 12:53:25 +02:00
Alex Denisov
cf0fc5829f
Swift: extract extension declarations
2022-06-14 08:22:43 +02:00
Mathias Vorreiter Pedersen
6c8982b46e
Merge pull request #9469 from rdmarsh2/rdmarsh2/swift/dataflow-inout
...
Swift: Dataflow through inout parameters
2022-06-13 18:11:11 +01:00
Robert Marsh
d7f839a147
Swift: use ExitNode as CFG for InoutReturnNode
2022-06-13 15:50:30 +00:00
Robert Marsh
9f2abf3d47
Swift: more inout dataflow tests
2022-06-13 15:39:17 +00:00
Mathias Vorreiter Pedersen
89bda047ff
Swift: Accept test changes.
2022-06-13 10:14:08 +01:00
Mathias Vorreiter Pedersen
7e5235b4d5
Revert "Merge pull request #9419 from github/revert-9373-cfg-for-key-paths"
...
This reverts commit 2187bf5dde , reversing
changes made to 8b1605a617 .
2022-06-13 10:12:22 +01:00
Mathias Vorreiter Pedersen
ae288332cc
Merge pull request #9511 from MathiasVP/fix-completion-for-patterns
...
Swift: Fix completion for "naked" patterns
2022-06-13 10:56:07 +02:00
Mathias Vorreiter Pedersen
9d7afab185
Swift: Fix completion for patterns that occur outside 'CaseLabelItems'. Previously we'd add an unnecessary 'no-match' completion to these patterns even though they were always matching. This caused some confusing output in the graph tests in particular.
2022-06-13 09:24:18 +01:00
Robert Marsh
755c56dafe
Swift: autoformat
2022-06-09 18:50:39 +00:00
Robert Marsh
fca1afa493
Swift: fix inout parameter conflation at return
2022-06-09 17:09:49 +00:00
Robert Marsh
8d4830cd23
Swift: make dataflow test a path-problem
2022-06-09 17:09:49 +00:00
Robert Marsh
a7663adf90
Swift: add flow through inout parameters
2022-06-09 17:09:49 +00:00
Paolo Tranquilli
01e1c13c29
Swift: add UnknownLocation
...
`getLocation()` will now exists for all entities. When there is no
valid location, the location will still not be emitted in the DB, but
on the QL side we will then assign a special `UnknownLocation` with
empty filename and 0 for line/column start/end.
This unknown location is currently emitted (with a unique `@` key) at
the start of every extraction, but we can move it elsewhere (and
possibly in a unique global trap file) at a later stage, possibly after
or when we rework the trap file strategy.
This should solve flakiness that was observed on the control flow tests,
which is probably caused by the `nodes` predicate in the `TestOutput`
class in `ControlFlowGraphImplShared.qll` not able to assign a proper
rank when the node does not have a location.
2022-06-03 14:59:22 +02:00
Alex Denisov
1dab01a31c
Swift: fix ctor/dtor names in toString
2022-06-02 08:28:46 +02:00
Paolo Tranquilli
6b90b2b05f
Swift: add children to IsPattern
2022-06-01 14:35:58 +02:00