Alex Denisov
743fd902a1
Swift: fix CFG for identity expressions (await, dot_self, parent)
2023-09-12 16:04:45 +02:00
Alex Denisov
35e949945d
Swift: add queries for unresolved AST nodes
2023-09-05 13:29:11 +02:00
Geoffrey White
b6dc2acc71
Merge branch 'main' into typegetname
2023-08-14 10:46:14 +01:00
Paolo Tranquilli
67cd25184a
Merge pull request #12433 from github/alexdenisov+redsun82/tuple-mangling
...
Swift: properly identify types and declarations in trap files via mangling
2023-08-03 13:27:07 +02:00
Mathias Vorreiter Pedersen
89aa86a1d6
Merge pull request #13741 from rdmarsh2/rdmarsh2/swift/array-content-flow
...
Swift: add DataFlow::Content for arrays
2023-08-02 17:37:40 +02:00
Alexandre Boulgakov
0dafe2d757
Swift: Mangle ArchetypeTypes with different superclasses in different extensions.
2023-08-02 15:18:52 +01:00
Geoffrey White
116006d280
Swift: Fix for type names containing '...'.
2023-08-01 13:57:46 +01:00
Geoffrey White
40219aad88
Swift: More robust Type.getName().
2023-08-01 13:24:10 +01:00
Alex Denisov
6667d9e45c
Swift: SubExpr may yield unresolved nodes in certain cases while MatchedExpr is always resolved
2023-08-01 14:15:33 +02:00
Geoffrey White
655f238017
Swift: Accept test changes.
2023-08-01 13:14:14 +01:00
Robert Marsh
22ae430e65
Swift: accept more test changes from hiding InOutExpr
2023-07-28 20:43:25 +00:00
Alexandre Boulgakov
3e7a7fe54e
Swift: Mangle ArchetypeTypes with different constraints in different extensions.
2023-07-28 21:39:52 +01:00
Robert Marsh
7ed520ab54
Swift: update test expectations after hiding InOutExpr
2023-07-28 14:29:24 +00:00
Alexandre Boulgakov
81372d0b63
Merge commit '36d86787e6fbbb158a148f93eb63f829134fd6b1' into alexdenisov+redsun82/tuple-mangling
2023-06-28 12:21:59 +01:00
Alex Denisov
ea5eda0f22
Swift: adjust test expectations
2023-06-27 17:21:56 +02:00
Alex Denisov
0479ef5b9c
Merge remote-tracking branch 'origin/rc/3.10' into alexdenisov/rc3.10_mergeback
2023-06-16 10:13:23 +02:00
Paolo Tranquilli
17111c96e4
Swift: accept test expectation changes
2023-06-14 16:17:44 +02:00
Paolo Tranquilli
b9c4adee31
Swift: print only toBeTested errors in Errors.ql test
2023-06-14 16:17:44 +02:00
Paolo Tranquilli
75684eebe9
Swift: add 5.8 update QL test
2023-06-14 16:17:44 +02:00
Paolo Tranquilli
0b09fdae43
Merge branch 'main' into alexdenisov+redsun82/tuple-mangling
2023-06-07 10:40:38 +02:00
Nora Dimitrijević
8ccbad601b
Swift: PrintAst test changes
2023-06-06 16:54:47 +02:00
Paolo Tranquilli
5a2433244e
Swift: remove now passing PrintAstConsistency check
2023-05-26 08:58:49 +02:00
Paolo Tranquilli
b0882a9e5f
Merge branch 'main' into alexdenisov+redsun82/tuple-mangling
2023-05-26 08:40:16 +02:00
Paolo Tranquilli
51f1a5dcc8
Swift: remove getOpaqueExpr from OpenExistentialExpr's children
2023-05-25 13:05:21 +02:00
Paolo Tranquilli
b26b0a6e43
Swift: remove property wrapper CFG inconsistencies
2023-05-25 13:05:21 +02:00
Paolo Tranquilli
7878bc3cc1
Swift: remove property wrapper AST inconsistencies
2023-05-25 12:15:22 +02:00
Paolo Tranquilli
63fb0581c2
Swift: accept inconsistencies for now
2023-05-24 20:09:46 +02:00
Paolo Tranquilli
2fb6cdc19b
Merge branch 'main' into alexdenisov+redsun82/tuple-mangling
2023-05-24 11:16:59 +02:00
Paolo Tranquilli
20893bdef5
Swift: accept test changes after hidden AST fix
2023-05-22 10:14:29 +02:00
Paolo Tranquilli
de03bdc235
Swift: fix hidden AST getters
...
For consistency with the C/C++ QL library, getters of AST elements
within the hidden AST should not themselves skip other hidden AST
elements.
2023-05-22 09:57:48 +02:00
Geoffrey White
a698f3fcb9
Merge branch 'main' into modernsec3
2023-05-02 17:35:08 +01:00
Paolo Tranquilli
0aed7d56c2
Swift: more mangling
2023-05-02 10:45:42 +02:00
Paolo Tranquilli
b269bd5010
Swift: mangle builtin and tuple types
2023-05-02 09:49:48 +02:00
Nora Dimitrijević
91a151ec2a
Swift: update tests
2023-04-26 15:47:20 +02:00
Mathias Vorreiter Pedersen
6dc6e13caa
Swift: Hide 'DynamicSelfType' from the main AST.
2023-04-26 13:58:54 +01:00
Alex Denisov
125aab8107
Swift: rework fetching and dispatching
...
* visiting now happens in a later stage than fetching labels. While
fetching a list of entities to be visited is created, and then acted
upon in actual extraction. This partially flattens the recursive
nature of `fetchLabel` into a loop inside `SwiftVisitor::extract`.
Recursion in `fetchLabel` will only happen on labels fetched while
naming an entity (calling into `SwiftMangler`).
* The choice whether to name a declaration or type has been moved from
the translators to `SwiftMangler`. Acting on this choice is contained
in `SwiftDispatcher::createLabel`.
* The choice whether to emit a body of a declaration has been moved from
`DeclTranslator` to the dispatcher. This choice is also contained in
`SwiftDispatcher::createLabel`.
* The simple functionality of the `LabelStore` has been moved to the
`SwiftDispatcher` as well.
2023-04-25 11:15:27 +02:00
Nora Dimitrijević
1f861fda25
Merge pull request #12736 from d10c/swift/capture-flow
...
Swift: Closure Capture Helper APIs
2023-04-20 18:45:56 +02:00
Geoffrey White
49dccaa89d
Swift: Fix other tests.
2023-04-19 14:16:24 +01:00
Nora Dimitrijević
7f675d8c3b
Swift: more CapturedDecl test cases
2023-04-18 16:50:38 +02:00
Alexandre Boulgakov
35a2d55d18
Swift: Extract structured keypath components.
...
Changes in swift/ql/lib are generated by swift/codegen without manual intervention.
2023-04-11 13:34:17 +01:00
Paolo Tranquilli
6f6d3f1262
Merge branch 'main' into redsun82/swift-imported-modules-as-set
2023-03-30 16:42:35 +02:00
Geoffrey White
8e4c7a9d89
Swift: Test expectations.
2023-03-29 15:49:36 +01:00
Geoffrey White
f042195e5c
Swift: Connect it up.
2023-03-29 15:49:17 +01:00
Paolo Tranquilli
20128adee4
Swift: make imported and exported modules a set
2023-03-29 15:44:07 +02:00
Nora Dimitrijević
c2e9ffab63
Swift: add EnumElementExpr + Pattern.getMatchingExpr()
2023-03-27 23:01:24 +02:00
Nora Dimitrijević
5419e65e01
Swift: add NamedPattern.getVarDecl()
2023-03-27 23:01:24 +02:00
Nora Dimitrijević
feb8243d5f
Swift: move BindingPattern to the hidden AST
2023-03-27 23:01:24 +02:00
Paolo Tranquilli
aaea976cf2
Swift: remove labels from function type printing
2023-03-20 16:43:34 +01:00
Paolo Tranquilli
a131966066
Swift: make SuccessfullyExtractedFiles.ql more precise
...
This is done by adding a `isSuccessfullyExtracted` predicate that is
filled for primary files at the very end of the extractor invocation if
the frontend was performed successfully. If for example the extractor
crashes this will therefore not be filled.
The upgrade script is written so that `SuccessfullyExtractedFiles.ql`
on an upgraded script will give exactly the same results as before it.
2023-03-20 08:34:34 +01:00
Geoffrey White
7ddd08fb1e
Swift: Extend an extractor test as well.
2023-03-10 18:35:03 +00:00