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
20128adee4
Swift: make imported and exported modules a set
2023-03-29 15:44:07 +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
Paolo Tranquilli
feb4e60c4b
Swift: make all ql generation language agnostic
2023-02-27 09:46:48 +01:00
Paolo Tranquilli
3ec2a3c711
Swift: fix subtle codegen bug on missing files
...
While the internal registry was being cleaned up from files removed by
codegen itself, it was not dropping files removed outside of codegen.
Because of this files removed by the user were not being regenerated
again if no change was staged to them, unless `--force` was provided.
This also fixes some such "ghost" entries in the registry and some
missing generated files.
2023-02-16 11:46:51 +01:00
Alex Denisov
712c25e6f4
Swift: extract availability info
2023-02-07 14:26:39 +01:00
Nora Dimitrijević
50e5b29eb7
Swift: all Callables can have captures [codegen'd]
2023-02-02 11:56:51 +01:00
Nora Dimitrijević
ce2e7f1d12
Swift: all Callables can have captures [hand-written]
2023-02-02 11:35:50 +01:00
Nora Dimitrijević
d230431006
Swift: extract closure captures (codegen'd part)
2023-02-02 11:35:49 +01:00
Nora Dimitrijević
87f7bc3a63
Swift: introduce closure capture AST test
2023-02-02 11:30:33 +01:00
Nora Dimitrijević
9346f4d760
Swift: fix failing tests
2023-01-30 11:39:06 +01:00
Nora Dimitrijević
1396d07662
Swift: subsume IterableDeclContext into Decl [tests]
2023-01-28 00:44:49 +01:00
Nora Dimitrijević
9a5614e8c5
Swift: subsume IterableDeclContext into Decl [codegen'd]
2023-01-28 00:44:49 +01:00
Paolo Tranquilli
0d32f00020
Swift: update ExtensionDecl test results
2023-01-17 12:58:02 +01:00
Paolo Tranquilli
f6e26211f9
Swift: add protocols to ExtensionDecl schema
2023-01-17 12:54:50 +01:00
Paolo Tranquilli
8906e101cb
Swift: add ExtensionDecl QL test
2023-01-17 12:49:53 +01:00
Nora Dimitrijević
f3ebb6e03b
Swift: MethodLookupExpr.getMethodRef() [codegen'd]
...
This refactors SelfApplyExpr.getFunction() as MethodLookupExpr().getMethodRef().
This is simpler, because we are not hiding DeclRefExprs or reinventing hidden AST resolution.
2022-12-20 23:09:02 -05:00
Nora Dimitrijević
95d4c304da
Swift: Fix .expected tests
...
Only UnsafeJsEval remains.
2022-12-14 15:02:15 -05:00
Nora Dimitrijević
6269e6b24d
Swift: move getName to Callable (generated)
...
Now that getStaticTarget returns a Callable.
2022-12-14 14:30:33 -05:00
Nora Dimitrijević
f6d5e8db5f
Swift: update test .expected files
2022-12-14 14:27:59 -05:00
Nora Dimitrijević
2b060b1433
Swift: initial schema change (generated part)
2022-12-14 14:24:35 -05:00
Nora Dimitrijević
0c55561b8e
Swift: initial schema change (hand-written part)
2022-12-14 14:22:53 -05:00
Mathias Vorreiter Pedersen
05d89b29e2
Merge branch 'main' into skip-lvalue-types
2022-12-07 17:50:23 +00:00
Paolo Tranquilli
ef348453fe
Swift: accept new, correct test result on TypeTuple::getNumberOfTypes
2022-12-07 13:46:51 +01:00
Paolo Tranquilli
23626f2c69
Swift: add TupleType test
2022-12-07 13:46:51 +01:00
Paolo Tranquilli
9b89ded908
Swift: accept test changes
2022-12-07 13:46:51 +01:00
Paolo Tranquilli
d39f37540e
Swift: add has and getNumberOf properties to generated tests
2022-12-07 13:46:51 +01:00
Mathias Vorreiter Pedersen
e7ec5a69a3
Swift: Accept more test changes.
2022-12-05 14:53:23 +00:00
Alex Denisov
f618d53302
Swift: add new implicit conversion
2022-11-30 12:40:34 +01:00
Alex Denisov
90d471b486
Swift: upgrade to Swift 5.7.1
2022-11-30 12:40:27 +01:00
Nora Dimitrijević
91edeacb9f
Swift: update .expected test files
2022-11-29 19:39:48 +01:00
Nora Dimitrijević
c5b4e87f6d
Swift: AccessorDecl tests for new cases
2022-11-29 16:00:00 +01:00
Nora Dimitrijević
931173350f
Swift: extract missing cases of AccessorKind and AccessSemantics
...
This resolves the warnings that were showing up during extractor-pack
compilation.
2022-11-29 11:31:07 +01:00
Paolo Tranquilli
eb14348153
Merge branch 'main' into redsun82/swift-error-element
2022-11-11 14:36:02 +01:00