Commit Graph

17 Commits

Author SHA1 Message Date
Allan Shortlidge
860b8cdf48 Concurrency: Revert workarounds for @backDeployed condfails.
All compilers that must be able to compile the standard library's textual
interface accept the following:
- back deployed functions declared without `@available`
- `@inlinable` back deployed functions
- `defer` blocks in back deployed functions

We can therefore revert the workarounds added in
https://github.com/apple/swift/pull/62946/ and
https://github.com/apple/swift/pull/62928/.

Resolves rdar://104085810
2023-05-08 18:21:08 -07:00
Konrad `ktoso` Malawski
e0877594da [Concurrency] Custom executors with move-only Job (#63569) 2023-03-18 14:02:43 +09:00
Xi Ge
9a98766df2 ABIChecker: consider adding @_predatesConcurrency ABI-safe
We shouldn't diagnose adding @_predatesConcurrency without considering the context because the attribute itself is for ABI-preserving purposes.

rdar://90738915
2023-03-14 17:26:01 -07:00
Konrad `ktoso` Malawski
fffe782fac Enable Concurrency ABI verifier test on apple silicon (#63987) 2023-03-02 11:26:51 +09:00
Anthony Latsis
5c0620bd08 Gardening: Migrate test suite to GH issues: api-digester 2022-08-11 17:43:23 +03:00
Yuta Saito
30b9fc90a8 Concurrency: fix inconsistent _asyncLet_get signatures 2022-03-30 20:58:40 +09:00
Evan Wilde
4700bc7e70 Add _runAsyncMain to api digester list
Adding `_runAsyncMain` to the api-digester list since we're adding
`@preconcurrency` when we add `@Sendable`. These two should negate each
other, but the api-digester isn't quite smart enough to understand that.
2022-03-21 13:02:20 -07:00
Konrad `ktoso` Malawski
369f3e62d9 [Concurrency] ignore @_marker protocol AnyActor ABI warnings
These are not an issue because adding a @_marker protocol conformance has no ABI impact - the protocol is not available at runtime.
2022-03-08 20:00:27 +09:00
Philippe Hausler
b0f0cb257d Audit and correct AsyncSequence Sendability (#41253)
* Audit and correct AsyncSequence Sendability

* Annotate availability on Sendable conformances for AsyncSequences

* Fix typo of Sendable.Iterator

* Correct tests to use sendable builders

* Add @preconcurrency annotations and fixup one remaining missing @Sendable case

* Move preconcurrency to correct syntactical position

* Use unchecked Sendable conditional conformance instead of marking all internals as preconcurrency and sendable

* Use unchecked Sendable conditional conformance instead of marking all internals as preconcurrency and sendable for dropWhile

* claim ABI changes for marking of @preconcurrency as expected
2022-03-04 21:21:32 -08:00
Doug Gregor
353daabf8d Replace UnsafeSendable with @unchecked Sendable in the standard library. 2021-11-12 07:56:10 -08:00
Artem Chikin
2ba1dc8b4e Update stability-concurrency-abi.test expected output 2021-10-25 13:17:41 -07:00
Doug Gregor
2850b65bd9 Simplify implementation and fix a test 2021-10-22 08:30:50 -07:00
Doug Gregor
5f9721c7fb Ensure that we hop off the main actor after MainActor.run.
Asynchronous functions isolated to global actors hop to the global at
the beginning of the function but do not hop back on return. For
`MainActor.run`, this means that we would not "hop back" off the main
actor after executing the closure, which lead to too much code running
on the main thread. Dropping the "async" ensures that we hop back.
While we my also want the general "hop back" semantics for
asynchronous actor-isolated functions, for now this addresses the
problem with `MainActor.run`.

Fixes rdar://82138050.
2021-10-21 23:26:02 -07:00
Xi Ge
daab430ea3 test: rebaseline stable ABI for _Concurrency 2021-10-21 13:06:11 -07:00
Xi Ge
819e53e94f ABI checker: removing deprecated APIs should be considered acceptable 2021-10-20 13:16:52 -07:00
Doug Gregor
11fc58287c Update _Concurrency library ABI diff to account for @frozen reversion. 2021-10-12 11:38:15 -07:00
Doug Gregor
4961220a2d Add ABI baseline and checking for _Concurrency library on macOS
Add the generated ABI baseline for the _Concurency model on x86_64
macOS, along with a test that checks the built _Concurrency model
against that baseline.

Right now, the test is a mess, because we have some ABI breaks to
unwind. Add it so the test passes, and then we'll audit and address
every change.

Fixes rdar://83673282.
2021-10-08 21:18:30 -07:00