Commit Graph

560 Commits

Author SHA1 Message Date
Jeroen Ketema
f4d1e1c034 Swift: Handle InlineArrayTypes 2025-10-31 10:15:07 +01:00
Jeroen Ketema
72e8ec3951 Swift: Update comment for LocatableTypes 2025-10-31 10:02:12 +01:00
Jeroen Ketema
b9d0cb7746 Swift: Add basic support for experimental using decls
Note that we cannot write tests for these at the moment. Passing
```
-enable-experimental-feature DefaultIsolationPerFile
```
to the extractor results in:
```
error: experimental feature 'DefaultIsolationPerFile' cannot be enabled in production compile
```
2025-10-31 09:58:12 +01:00
Jeroen Ketema
67b6b9cd15 Swift: Support UnsafeExpr 2025-10-31 09:58:10 +01:00
Jeroen Ketema
b08b123184 Swift: Support new accessors 2025-10-31 09:57:58 +01:00
Jeroen Ketema
2022dd833e Swift: Address review comments 2025-10-27 10:48:02 +01:00
Jeroen Ketema
06d0d48416 Swift: Work around assertion failures in mangler 2025-10-24 14:37:55 +02:00
Jeroen Ketema
d890feedda Swift: Compensate for backwards going locations 2025-10-24 14:37:48 +02:00
Jeroen Ketema
626bc55caf Swift: Fix AvailabilitySpec trap generation 2025-10-24 14:37:47 +02:00
Jeroen Ketema
300b5b15e7 Swift: Mangle function type lifetimes 2025-10-24 14:37:46 +02:00
Jeroen Ketema
22dddb0216 Swift: Fix unavailability checks after 6.2 upgrade 2025-10-24 14:37:43 +02:00
Jeroen Ketema
2ef8bb0c53 Swift: Make extractor compile with Swift 6.2 2025-10-24 14:37:42 +02:00
Jeroen Ketema
b4d2fb45ab Swift: Fix type string representation 2025-05-26 16:22:20 +02:00
Jeroen Ketema
98384bf4c2 Swift: Support BuiltinFixedArrayType 2025-05-02 14:47:58 +02:00
Jeroen Ketema
c74fca929a Swift: Support TypeValueExpr and IntegerType 2025-05-02 14:47:56 +02:00
Jeroen Ketema
97d2ed8b3b Swift: Support UnsafeCastExpr 2025-05-02 14:47:55 +02:00
Paolo Tranquilli
46fb041c50 Merge pull request #19384 from github/redsun82/swift-add-logs
Swift: add more debug logs
2025-04-25 17:24:11 +02:00
Paolo Tranquilli
d9a6a630e5 Swift: fix log compilation 2025-04-25 15:37:08 +02:00
Paolo Tranquilli
e71e7a08bb Swift: add more debug logs 2025-04-25 15:20:20 +02:00
Jeroen Ketema
a5a21b1ddd Swift: Guard 'getCaptures' in fillClosureExpr 2025-04-24 17:42:59 +02:00
Jeroen Ketema
36672f44b9 Swift: Take inverses into account when mangling ProtocolCompositionTypes 2025-04-23 17:10:55 +02:00
Paolo Tranquilli
7834a3d9e4 Swift: expand mangling of ExistentialMetatypeType 2025-04-23 17:10:55 +02:00
Jeroen Ketema
30242ed6fb Swift: Remove "to do" comment 2025-04-23 17:10:54 +02:00
Jeroen Ketema
4fc5a73bac Swift: Update mangling of OpenedArchetypeType 2025-04-23 17:10:54 +02:00
Paolo Tranquilli
1ac47a892b Swift: make extractor compile again after 6.1 upgrade 2025-04-23 17:10:54 +02:00
Paolo Tranquilli
fa6deaf87a Swift: extract UnreachableExpr 2025-04-14 10:35:24 +02:00
Paolo Tranquilli
9473543933 Swift: extract ActorIsolationErasureExpr 2025-04-14 10:35:24 +02:00
Paolo Tranquilli
ad0f9f1e73 Swift: mark ErrorUnionType as type-check only 2025-04-14 10:35:23 +02:00
Paolo Tranquilli
712142cde9 Swift: extract CurrentContextIsolationExpr 2025-04-14 10:35:22 +02:00
Paolo Tranquilli
2910cb68ce Swift: extract ExtracFunctionIsolationExpr 2025-04-14 10:35:21 +02:00
Paolo Tranquilli
1a654557a9 Swift: fix KeyPathExpr assertion 2025-02-05 10:52:34 +01:00
Paolo Tranquilli
5c31edd6cb Swift: drop indisciminate printing of the env 2025-01-23 08:31:21 +01:00
Paolo Tranquilli
8efd127010 Swift: improve diagnostics for OS incompatibility
* do not mention any more that one might make analysis happen on Linux with
  advanced setup
* say that outright Swift analysis is only supported on macOS, not just
  autobuild.
* emit the error diagnostics even for traced builds, not only for autobuilds
  (by using a dummy `extractor` executable).
2024-12-16 10:12:31 +01:00
Paolo Tranquilli
5ca89eaede Merge branch 'main' into redsun82/swift-6 2024-12-12 12:28:47 +01:00
Cornelius Riemenschneider
53ca5083a9 Upgrade bazel to 8.0.0.
Previously, we were using 8.0.0rc1.
In particular, this upgrade means we need to explicitly
import more rules, as they've been moved out of the core bazel repo.
2024-12-10 12:05:37 +01:00
Paolo Tranquilli
a82d37e05c Swift: fix gracefully accepting missing ForEachStmt.iteratorVar 2024-12-06 14:45:24 +01:00
Paolo Tranquilli
814218c7a8 Swift: extract variables as children of ForEachStmt 2024-11-28 11:03:46 +01:00
Paolo Tranquilli
02a0021a26 Swift: tweak mangling of extensions 2024-11-06 08:40:12 +01:00
Paolo Tranquilli
5a045beff9 Swift: turn off SIL verifications 2024-10-31 10:03:08 +01:00
Paolo Tranquilli
7f3745cfcd Swift: fix @isolated(any) DB inconsistencies 2024-10-31 06:22:06 +01:00
Paolo Tranquilli
3877eb8bc9 Swift: tentatively fix type mangling 2024-10-30 17:08:20 +01:00
Paolo Tranquilli
d3fb2543d2 Swift: try out new builds 2024-10-30 12:26:34 +01:00
Paolo Tranquilli
524686ce37 Swift: make extractor compilable with Swift 6 2024-10-08 16:39:21 +02:00
Paolo Tranquilli
2606d3f6d1 Reapply "Bazel: add codeql specific packaging library"
This reverts commit 31d6b9be4d.
2024-05-29 15:46:29 +02:00
Paolo Tranquilli
31d6b9be4d Revert "Bazel: add codeql specific packaging library" 2024-05-29 15:27:10 +02:00
Paolo Tranquilli
0b7a4257d7 Bazel: use {CODEQL_PLATFORM} as discriminant between arch and generic contents 2024-05-27 10:31:19 +02:00
Paolo Tranquilli
60cf77be7e Bazel: add codeql specific packaging library
This encapsulate arch specific logic, local installation and separation
of zip files into generic and arch-specific parts as required by the
internal build.
2024-05-24 10:27:44 +02:00
Paolo Tranquilli
9f5782b67b Bazel: introduce buildifier formatting
This introduces tooling and enforcement for formatting bazel files.

The tooling is provided as a bazel run target from
[keith/buildifier-prebuilt](https://github.com/keith/buildifier-prebuilt).

This is used in a [`pre-commit`](https://pre-commit.com/) hook for those
having that installed. In turn this is used in a CI check. Relying on a
`pre-commit` action gives us easy checking that buildifying did not
change anything in the files and printing the diff, without having to
hand-roll the check ourselves.

This enforcement will make usage of gazelle easier, as gazelle itself
might reformat files, even outside of `go`. Having them properly
formatted will allow gazelle to leave them unchanged, without needing
to configure awkward exclude directives.
2024-04-24 15:49:48 +02:00
Paolo Tranquilli
b8e38288e3 Swift: add extraction of ThenStmt
These are currently added implicitly by the compiler in the context of
`if`/`switch` expressions. In the future, there might be explicit
`then <expr>` statement useful for cases where one would like to add
more than one statement in the branch, to mark what value to actually
use.

See https://forums.swift.org/t/pitch-multi-statement-if-switch-do-expressions/68443
2024-03-27 13:26:04 +01:00
Paolo Tranquilli
2382f76317 Swift: ignore experimental ThenStmt 2024-03-27 12:23:37 +01:00